如何通过具有属性值的成员在ldap中获得用户组

时间:2019-08-21 11:01:44

标签: ldap openldap

我的问题与how to get groups of a user in ldap非常相似,但我希望能够搜索其成员具有属性foo和值为bar的组

即,从上一个问题开始,而不是做(&(objectClass=groupOfNames)(member=cn=root,ou=django,dc=openldap))

我想做类似的事情 (&(objectClass=groupOfNames)(member=sn=bar)) 但似乎只有完整的DN可以用于此类查询。有没有其他方法可以找到与模式匹配的用户组?

1 个答案:

答案 0 :(得分:0)

由于memberOf可用,因此您可以搜索用户而不是组:

(&(objectClass=person)(sn=bar))

(您可能需要根据用户的需要更改objectClass。我习惯了Active Directory,而不是OpenLDAP。)

然后,您可以阅读找到的用户的memberOf属性。

更新:如果您只想查找具有该属性的该组的成员,则可以在一个查询中使用查询中的memberOf并查找DN。小组:

(&(objectClass=person)(sn=bar)(memberOf=CN=MyGroup,DC=whatever))