我试图排除一个模糊的身份validation错误,并需要一些背景信息。
Windows(和Outlook等程序)如何处理DOMAIN\username
和[email protected]
有什么区别?
这两个用户名格式有什么合适的条款?
编辑 :特别是,Windows如何authentication两种用户名格式有什么不同?
假设您有一个Active Directory环境:
我相信反斜线格式DOMAIN \ USERNAME会search域DOMAIN的SAM帐户名称是USERNAME的用户对象。
UPN格式的username @ domain将在森林中search其用户主体名称为username @ domain的用户对象。
现在, 通常情况下,具有USERNAME的SAM帐户名称的用户帐户具有USERNAME @ DOMAIN的UPN,因此任一格式都应该find相同的帐户,至lessAD提供的function完全正常。 如果存在复制问题,或者无法访问全局编录,则在UPN格式失败的情况下,反斜杠格式可能会起作用。 例如,如果没有域控制器可以到达目标域,也可能存在(反常)条件,反之则适用。
但是,您还可以显式configuration用户帐户,使其具有与SAM帐户名称不同的用户名组成部分,并且其域名组件与域名不同的UPN。
“Active Directory用户和计算机”中的“帐户”选项卡在“用户login名”标题下显示UPN,在“用户login名(Windows 2000以前版本)”标题下显示SAM帐户名。 所以如果你遇到特定用户的麻烦,我会检查这两个值之间是否有差异。
注意:如果我上面描述的search没有find用户帐户,则可能会执行其他search。 例如,也许指定的用户名被转换成其他格式(显而易见的方式)来查看是否产生匹配。 还必须有一些程序用于在不在森林中的可信域中查找帐户。 我不知道在哪里/是否logging了确切的行为。
只是为了进一步复杂化故障排除,Windows客户端将默认caching有关成功交互式login的信息,这样即使您的Active Directory中的用户帐户信息不可访问,您也可以login到同一个客户端。
我可能会纠正这一点,但没有太大的区别。
域\用户是“旧”login格式。 不确定是否真的有一个简洁的术语。 SAMAccountName或Windows 2000以前的login名似乎并不真正封装它。
[email protected]是一个UPN – 用户主要名称 – 这是“首选”,更新的login格式。 UPN在RFC 822中进行了讨论(尝试2822.)我认为使用UPNlogin的原因大多是表面化的 – 他们假设给你的公司用户一个单一的名字,login他们的工作站,也可以作为他们的公司电邮地址。
编辑:更详细 – UPN的另一个优点是你可以设置多个有效的UPN供你的用户login。 再次,很大程度上美容 但重要的是,并不是所有的应用程序都与UPN兼容,这可能是你正在经历的。
编辑#2:我喜欢哈里·约翰斯顿的回答下面两个略有不同的search格式执行。 这是有道理的,最重要的是它可以解释你的问题。 🙂
斜杠格式( DOMAIN\username
)实际上是域的DNS名称( domain.mycompany.local
)的NetBIOS
等效项。
NetBIOS
名称限制为15个字符,不能包含点,下划线等
本页面更详细地解释:
* Jeff Schertz,2012-08-20, 了解Active Directory命名格式 (已在此存档)
正如上面提到的@ harry-johnston,它实际上只是旧的NT4和Windows 2000兼容的格式,但它似乎已经停留在最喜欢的格式(它less了types!)。 最终,支持传统格式可能会从Windows。
让用户养成使用UPN格式的习惯可能是一个好主意,因为它也避免了使用用户名login到个人电脑时遇到问题的问题,并且没有意识到Windowslogin框已经默认到了本地PC域(例如pc01\fred
)或连接到不同的远程桌面主机时,必须记住包括域以及用户名,因为远程桌面客户端可能会caching另一个以前使用的域名。 坚持UPN格式,每次只是减less支持电话。
这两者之间是有区别的,只有99%的用户不会有问题。 我将尝试解释这种差异,以及何时会出现这样的问题。
如果您在尝试访问文件共享时使用域\用户名,则DNS将首先parsing域,然后检查用户名。 如果您使用username @ domain,那么它将直接检查用户是否在ACL(访问控制列表)上并具有访问权限。 那么你可能会想怎么回事呢?
1名称为DC01的域控制器,所有客户端都获得了dns,并且位于该域中。 您想要迁移并且某人添加了另一个具有相同名称的服务器。 后一台服务器也将成为一个DC,所以本地SAM不会再被使用,并且还有文件共享。
当用户连接到服务器时,系统会提示他们input凭据。 如果您使用域\用户名,它将首先检查当前的域,而不是使用新的域,我们使用文件共享上新域的帐户。 所以一旦find了当前的直stream电,并检查用户名不能find。 (即使find用户名和密码,并且完全相同,也不会起作用,因为它不会使用用户名来validationACL是否被允许,但它将使用SID。sid将在用户创build时间在AD,你有一个万亿的变化,它是相同的,伟大的: – P)。