在AD中,我有多值属性“departmentNumber”,它可以存储多个值,如“dept1”和“dept2”。
我正在寻找ldap过滤器,它应该检索拥有超过1个departmentnumber的用户。
我查看了其他帖子,但这似乎不起作用。
感谢任何帮助。
答案 0 :(得分:7)
服务器将返回与搜索参数匹配的每个条目的多值属性的每个值(假设连接的授权状态允许)。搜索响应将是与搜索参数匹配的对象列表,并且每个对象都是在搜索请求的请求属性参数中指定的属性列表(名称和值对)。多值属性的所有值都将包含在搜索结果中。
如果客户端需要dept1
和dept2
,则将其作为断言包含在过滤器中,例如:
(&(departmentNumber=dept1)(departmentNumber=dept2)(objectClass=whatever..))
鉴于以下条目仅显示cn
和departmentNumber
:
$ ldapsearch --baseDN 'ou=people,c=us' --searchScope one '(&)' cn departmentNumber
dn: cn=user.1,ou=People,C=us
cn: user.1
departmentNumber: dept1
departmentNumber: dept2
dn: cn=user.2,ou=People,C=us
cn: user.2
departmentNumber: dept2
请注意,搜索响应包括两个条目以及两个值
departmentNumber
cn=user.1,ou=people,c=us
。