首页 > 解决方案 > LDAP Active Directory 是否可以具有不同的 sn 和 givenName 但名称相同

问题描述

一个 ldap 活动目录是否可以有两个用户,其名称如下: John Smith, Lin (givenName = Lin, sn= John Smith) John, Smith Lin (givenName = smith Lin, sn = John)

标签: active-directoryldap

解决方案


在开始回答您的问题之前,我建议您参考Active Directory 中对象的名称链接:

...如果在“Active Directory 用户和计算机”MMC 中创建用户对象,则名称默认如下。您指定用户的“First Name”、“Initials”和“Last Name”(“givenName”、“initials”和“sn”属性)

标有“全名”的字段默认为“givenName initials sn”。该字符串被分配给“cn”属性(Common Name)。您可以覆盖默认值。...

现在,来回答你的问题:

  • 一个 ldap 活动目录是否可以有两个用户,其名称如下: John Smith, Lin (givenName = Lin, sn= John Smith) John, Smith Lin (givenName = smith Lin, sn = John)

答:用户的 RDN 是其规范名称或 cn 属性的值。与其他目录对象一样,用户对象具有 cn、name、distinguishedName 和 objectGUID 形式的名称。专有名称 (DN) 是唯一的,它们明确地标识目录中的对象。

目录服务器不允许在同一父级或容器下具有相同相对 DN (RDN) 的两个对象。DN 由 RDN 及其容器路径组成。因此RDN的唯一性保证了DN的唯一性。

所以,最后回答,这取决于创建这些对象的路径/容器。如果在同一个 OU/容器中创建这 2 个用户,并且如果 cn 评估为相同的值,则不允许您创建具有相同名称的第二个用户。

如果这 2 个用户是在不同的容器/OU 中创建的,那么您可以轻松地创建它们。对于域或林中的用户对象,以下值是唯一的:

  1. userPrincipalName - UPN 在目录林中的所有安全主体对象中必须是唯一的。
  2. objectGUID - GUID 在整个企业和其他任何地方都是唯一的。
  3. sAMAccountName - sAMAccountName 在域内的所有安全主体对象中必须是唯一的。
  4. objectSid - objectSid 在域中是唯一的。
  5. sIDHistory - ObjectSid 在每个域中都是唯一的,并且 sIDHistory 属性包含来自用户先前域移动的 SID。

来源:了解 Active Directory 中的独特属性


推荐阅读