使用ldap3查询用户所属的所有活动目录组

Use ldap3 to query all active directory groups a user belongs to

我使用此查询从 Active Directory 查询域用户没问题

from ldap3 import ObjectDef, AttrDef, Reader, Entry, Attribute, OperationalAttribute
import ldap3

person = ObjectDef('inetOrgPerson')
s = ldap3.Server('myad.com')
c = ldap3.Connection(s, user = 'myuser', password = 'mypassword')

ldap3.Reader(c, person, '(&(objectCategory=person)(sAMAccountName=myuser))', 'dc=mydomain,dc=com').search()

然而,这个查询 returns 用户所属组的空列表,如何让它工作?

ldap3.Reader(c, person, '(&(objectCategory=group)(member=myuser))', 'dc=mydomain,dc=com').search()

我用ldap3。提前致谢。

This answer 帮助了我:

我需要从第一个查询返回的用户的完整 DN,所以这有效:

ldap3.Reader(c, person, '(&(member=CN=myuser_in_full_name,OU=xxx,OU=xxxxxx,DC=mydomain,DC=com)(objectClass=group))', 'dc=mydomain,dc=com').search()