AS-REQ的cname-string部分是否可以包含域?

问题描述:

在Windows客户端和Active Directory服务器之间的网络捕获,我看到现场cname-string包含[email protected](准确地说,它是场as-req - >req-body - >cname - >cname-string - >CNameString)。AS-REQ的cname-string部分是否可以包含域?

根据第5.2.2节中的RFC 4130。领域和生成PrincipalName:

名称字符串: 此字段编码形成的名称,编码为每个KerberosString部件 成分的序列。综合起来,一个 PrincipalName和一个领域形成一个主体标识符。大多数 PrincipalNames将只有少数组件(通常一个或 两个)。

也在5.3节。门票:

CNAME 该字段包含客户端的主要 标识的名称部分。

对我来说,这意味着cname应该只包含没有域的用户名。域是通过领域获得的,并且它们一起形成主体标识符(基本上在此解释RFC)。

我错了吗?你有没有遇到过域名是cname的一部分的设置?目标服务如何处理?我发现领域再次被添加到cname,导致user @ domain.com @ domain.com,这明显阻止了正确的匹配。

+0

这是Active Directory吗? –

+0

是的,这是Active Directory。 – Martin

至少有一种情况会发生:企业负责人。您应该可以看到NT-ENTERPRISE以及CANONICALIZE位设置。 AD为所提供的企业负责人提供upnSuffix。另请参阅RFC 6806

+0

事实上,原因似乎是'NT-ENTERPRISE'这个名称(在Windows中称为'KRB_NT_ENTERPRISE_PRINCIPAL',在Wireshark中它是'kRB5-NT-ENTERPRISE-PRINCIPAL')。但是,在我的情况下,没有设置upnSuffix,所以这是可选的。 – Martin

+0

Windows始终设置此主体类型和canocalize标志,因为它不会在登录时知道传递的主体是隐式还是显式的。 KDC将为客户做其余的事情。 –