如何检查是否有任何用户作为 LDAP 中的组过滤器的一部分存在



比如说,我想检索一些用户,我已经提供了user_filter和group_filter来过滤掉我需要的特定用户。 user_filter = (&(cn=ab*)(sn=cd*)) group_filter = (|(cn=gh*)(cn=kl*))

我知道如何为用户和组编写单独的查询。如何组合上述过滤器来编写单个查询,以便获得公用名以"ab"开头且姓氏以"cd"开头的用户,并且他们属于以"gh"或"kl"开头的组?

这取决于您如何定义成员资格。如果您有组的成员资格,例如。组 1 具有用户 1 的成员属性,此组合查询是不可能的。如果您在用户上定义了组,例如。user1 具有组 1 的 memberOf 属性,然后您可以执行以下操作

(

&(objectclass=user)(cn=ab*)(sn=cd*)(|(成员=cn=gh*)(memberof=cn=kl*)))