如果对象具有多个CN属性,如何判断哪个是名称?

时间:2017-09-05 13:33:13

标签: c# windows active-directory

我试图显示用户所属的域组的简单列表。我查询AD以了解用户的群组。对我来说,CN是唯一的名字"对象,相对于他的父母。

"CN=Internet,OU=Groups,DC=elver,DC=do",   
"CN=Developer,OU=Groups,DC=elver,DC=do",
"CN=Remote Desktop Users,CN=Builtin,DC=elver,DC=do"

现在看第三组。它有两个CN属性。我该如何解释?

2 个答案:

答案 0 :(得分:1)

CN是通用名称'在ldap中的一个对象中,DN是一个可分辨的名称' ldap中对象的全局唯一。

在你的例子中,在AD中,"内置"是一个容器(相对于OU),用" CN ="表示。在字符串中。拥有类似" CN =远程桌面用户,CN =内置,DC = elver,DC = do"它指的是单个物体。

长话短说,每个字符串都是一个DistinguishedName,其中 FIRST (最左边)CN =是公共名称。

答案 1 :(得分:1)

  

对于我的未知,CN是对象的“唯一名称”,   相对于他的父母

NO。实际上,CN代表common name。你很困惑CN,因为CN通常是RDN(在下面的答案中解释)常用的例子。在Active Drectory中,CN适用于除少数几种对象类型之外的所有对象。

有一个名为Relative Distinguished Name (RDN)的概念,它实际上是用于唯一引用目录中其父容器内的对象的名称。它实际上是对象的一个​​属性 - 对象名称的一部分,它将对象标识为其兄弟姐妹在命名层次结构中当前级别的唯一对象。

  1. 当DN =“CN =远程桌面用户,CN =内置,DC = elver,DC = do”时,对象的RDN为“CN = Remote Desktop Users”,这在Builtin Container中是唯一的

  2. 当DN =“CN = Developer,OU = Groups,DC = elver,DC = do”时,对象的RDN为“CN = Developer”,这在父容器组中是唯一的。

  3. 当DN =“CN = Internet,OU = Groups,DC = elver,DC = do”时,对象的RDN为“CN = Internet”,在父容器组中也是唯一的。< / p>

  4.   

    如果对象有多个名称,如何判断名称是哪一个   CN属性?

    所以,我相信你现在知道答案了。 DN中最左边的CN将是对象的实际公用名,它也是唯一的,在DN中标记为前面的容器内。

    NOTE: The term "container" refers to one of two things:
          (i) An object of the container structural class.
          (ii)An object that has child objects.