为什么一个用户可以通过多个 UPN 登录?

Jim*_*m B 7 active-directory windows-authentication adfs

我已将公司的所有用户的 UPN 后缀从us.mycompany.local更改为mycompany.com,以便使用声明感知应用程序。在更改之前的测试中,我发现即使我更改了 UPN 后缀,用户也可以使用旧后缀成功进行身份验证。我不明白的是为什么这仍然有效。

cha*_*j81 12

瑞安和乔的上述评论是有针对性的。听起来您的用户正在使用他们的隐式UPN登录。是您域的 FQDNus.mycompany.local吗?

在 Active Directory 中,每个用户都有两个 UPN:

  1. 显式 UPN (eUPN):这是用户对象的userPrincipalName属性值。这可以更改为任何值,无论您在林中配置了任何备用 UPN 后缀。

  2. 隐式 UPN (iUPN):这是通过将用户对象的samAccountName属性值与域的 FQDN 值串联而成的。FQDN 存储为存储在)dnsRoot的域crossRef对象的属性值LDAP://CN=DOMAIN_NETBIOS_NAME,CN=Partitions,CN=Configuration,DC=DOMAIN

DS MVP Jorge de Almeida Pinto 发表了一系列更详细的帖子:

编辑 1:

还值得注意的是,如果存在冲突,eUPN 会“获胜”。例如,考虑以下(虽然很荒谬)的场景:

  • 域名: example.com
  • User1 的 samAccountName: user1
  • User2 的 userPrincipalName (eUPN): user1@example.com

如果您尝试使用用户名登录user1@example.com,您将以User2. 但是,如果您将 User2 更改userPrincipalName为其他任何内容,您将以User1.

编辑2:

每个 MS 的更多信息:MSKB929272:Windows Server 2003 中的交互式登录样式和密钥分发中心帐户查找