AD用户属性:UserPrincipalName与SamAccountName的差别
在我们日常工作中或者日常针对ad进行自动化开发的过程中,我们都会对userprincipalname与samaccountname产生疑惑,毕竟很多时候大家都把这两个属性值理解为同一个概念,至于为什么总是说不清楚,今天就简单归总下该内容。
userprincipalname:指定要由客户端进行身份验证的服务的用户主体名称 (upn)。一个用户帐户名(有时称为“用户登录名”)和一个域名(标识用户帐户所在的域),这是登录到windows域的标准用法。格式是: xiaowen@azureyun.com (类电子邮件地址)。
samaccountname:在ad属性amaccountname中,存储帐户登录名或用户对象,实际上是命名符号“domain\logonname ”中使用的旧netbios表单,该属性是域用户对象的必需属性;而samaccountname应始终与upn主体名称保持一致,即samaccountname必须等于属性“userprincipalname” 的前缀部分。
userprincipalname:
- 用户登录名格式:
- 是基于internet标准rfc 822的用户internet样式登录名;
- 在目录林中的所有安全主体对象中应该是唯一的;
- upn是可选的,在创建用户帐户时可指定也可不单独指定;
samaccountname:
- 与早期版本的windows(pre-windows 2000)一起使用;
- 用户登录名格式:azureyun\xiaowen
- 不能超过20个字符;
- 在域中的所有安全主体对象中是唯一的;
举例:
域名:azureyun.com
samaccountname:xiaowen
netbios登录名:azureyun\xiaowen
userprincipalname:
例外情况可能是用户将使用真实电子邮件地址登录系统的环境。这里samaccountname可以与userprincipalname不同:
域名:azureyun(netbios)azureyun.com(dns)
samaccountname:xiaowen
netbios登录名:azureyun\xiaowen
userprincialname:
windows登录名具有数据类型unicode字符串 - 从来没有系统给出一些限制。名称不能超过20个字符,并且不允许使用以下字符:\ / [] :; | =,+ *?<> @“
有关属性内容请参考官链。