2

LDAP 库:python-ldap

我正在尝试查询一个拥有大约 1,000 个用户的安全组以获取成员列表。这些是我用来查询安全组的搜索首选项。

Filter: (&(objectCategory=Group)(distinguishedName=cn=SomeGroup,dc=foo,dc=bar))
base dn: cn=SomeGroup,dc=foo,dc=bar
attributes: ['member']

我知道此查询适用于较小的组,因为我已经对其进行了测试并收到了它包含的成员列表。

我也尝试过实现分页组搜索,但它不会在其有效负载中返回任何内容,而是返回一个空的错误消息。我的分页大小为 1,因此使用分页获取太多用户应该不是问题。我已经在组织单位(OU)上测试了我的分页搜索,所以我知道它已正确实施。

任何帮助或建议将不胜感激。

4

1 回答 1

1

要获取特定组的成员列表,您应该使用memberof搜索过滤器:

过滤器: (&(memberof=cn=SomeGroup,dc=foo,dc=bar))
属性:关于成员的任何您想知道的内容
基本 DN:我建议将其设置为您的目录根 (dc=foo,dc=bar ) 以确保您获得完整的成员列表

如果您想以相反的方式执行此操作(从组中读取成员的专有名称),您应该read使用虚拟过滤器执行操作,(objectclass=*)并将基本 DN 设置为组的专有名称,并请求member属性。

于 2013-07-13T11:41:43.307 回答