如何在 LDAP 中获取用户的组织和 OU

How to get the Organization and OU of a user in LDAP

我正在尝试查询用户在 LDAP 中所属的组。 这是我的目录结构。

我需要实现的是获取用户所属的组。 所以在这里,我希望得到第二组,因为用户 "Ola Torres" 是该组的成员。

用户:uid:ola.torres

我尝试了很多查询,但没有任何效果。

DC-MY_DC
|
O - Department One (Department)
  |- ou:groups
    | cn:Group One
    | cn: Group Two (Group)
       |member: Ola Torres
  |- ou:people
    |-cn: Ola Torres
O - Department Two
  | - ou: groups
     |-cn: Group Three
     |-cn: Group Four

这些是我在 java 中的查询:

            SearchControls searchControl = new SearchControls();
            String[] attrs = { "cn" };
            searchControl.setReturningAttributes(attrs);
            searchControl.setSearchScope(SearchControls.SUBTREE_SCOPE);
            String criteria = "(&(objectClass=organizationalUnit)(ou:dn:=groups)(member=cn=ola.torres))";

我收到空列表。请帮忙。 :(

遇到和我一样问题的朋友,需要完整的会员DN。 我将搜索条件更改为:

(&(objectClass=organizationalUnit)(ou:dn:=groups)(member=cn=ola.torres, o=MY_DC,ou=people,dc=com, dc=company))

效果很好! :)