LDAP_MATCHING_RULE_IN_CHAIN究竟做了什么?

时间:2017-04-25 14:02:07

标签: active-directory ldap memberof

我已经在https://msdn.microsoft.com/en-us/library/aa746475(v=vs.85).aspx上阅读了LDAP_MATCHING_RULE_IN_CHAIN几次和谷歌搜索,但我无法掌握它的作用。

这就是MSDN所说的,但我不明白。什么" 走在祖先的链条"意思?

  

此规则仅限于适用于DN的过滤器。这是一个特殊的"扩展"匹配运算符,它将对象中的祖先链一直遍历到根,直到找到匹配为止。

无论我做什么,我的所有搜索都返回相同的数据。

<GC://DC=company,DC=com>;(&(objectClass=user)(memberof=CN=one,DC=some,DC=company,DC=com));name;subtree

<GC://DC=company,DC=com>;(&(objectClass=user)(memberof:1.2.840.113556.1.4.1941:=CN=one,DC=some,DC=company,DC=com));name;subtree

据我所知,他们都将在GC的子树中搜索属于组CN=one,DC=some,DC=company,DC=com成员的所有用户。我无法弄清楚的是第二个不同的是什么?

1 个答案:

答案 0 :(得分:3)

如果我没记错的话,第一个只能找到具有直接成员资格的对象,而第二个会以递归方式找到嵌套成员资格。

鉴于以下群体:

[{'name': 'd', 'color': 'purple', 'id': '4'}]

使用第一种方法查询Group A is a member of Group B Group B is a member of Group C 只会返回Group A。使用第二种方法将返回Group BGroup B