繁体   English   中英

LDAP:获取特定组中的用户列表

[英]LDAP: Get list of users in a specific group

我正在尝试获取特定用户组的所有用户。 我在 java 中这样做,我可以连接到 ldap 并从不同的查询中获取结果。 但是,我已经寻找解决方案,但据我所知,我工作场所的 LDAP 结构与正常情况不同。

用户 dn:

ou=Users,O=MYCOMPANY.COM

用户组的dn:

cn=Admin,ou=Profiles,ou=MYAPP,ou=Applirights,O=MYCOMPANY.COM

对于用户组,cn 是权限级别/组名(Admin),应用程序的名称在一个组织单元中。 使用这种结构,我将如何查询该特定组中的所有用户?

我试过:

NamingEnumeration<?> namingEnum = ctx.search("ou=Users,O=MYCOMPANY.COM", "(cn=Admin,ou=Profiles,ou=MYAPP,ou=Applirights,O=MYCOMPANY.COM)", searchControls);

但是,搜索控件中需要哪些属性? 我使用uid这是用户登录名。

我也试过这里概述的内容:

(&(objectCategory=user)(memberOf=cn=Admin,ou=MYAPP,ou=Applirights,O=MYCOMPANY.COM))

没有任何效果,我的意思是我得到 0 结果但没有错误。 如何使用给定的 ldap 组织实现这一目标?

组有一个叫做memberOf东西:所以试试这个:

search -s sub -b "DC=whatever,DC=mydomain,DC=com" "(&(objectCategory=user)(memberOf=CN=GROUP,DC=whatever,DC=mydomain,DC=com))"

你填写上面的whatever mydomainGROUP ^

搜索控件中需要哪些属性?

searchControls中列出的属性是您想要返回的属性。 包含组成员的那个。 根据组对象是什么objectClass ,它可能是:

  • groupOfUniqueNames uniqueMember
  • roleOccupant用于organizationalRole roleOccupant

等等。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM