Поиск групп LDAP, к которым принадлежит данный uid

#java #ldap #ldap-query

#java #ldap #ldap-запрос

Вопрос:

Я немного разбираюсь в LDAP. У меня есть организационная структура в LDAP в формате ниже,

uid=test.gen, OU= Generics,O=cco.mycomp.com

Указанный выше uid является частью группы «EF_GROUP» и некоторых других групп.

Теперь я получаю только конечное значение примечания в моем методе, которое называется «test.gen».

Итак, моя проблема в том, что я хочу получить все группы, к которым принадлежит данный uid.

Пожалуйста, помогите мне.

Комментарии:

1. Это наш внутренний метод, например, checkAccess(String uid) { // здесь я хочу узнать все группы, к которым принадлежит данный uid}

2. Итак, вы посмотрели, например, на это ?

3. ОК. Я пройду по вашей ссылке.

Ответ №1:

Запрос LDAP

(amp;(objectClass=group)(memberof=YourUsersDNhere))

нашел бы их. Вам должно быть разрешено указывать базовый DN, в котором должны быть расположены группы. Что приятно, поскольку это также немного расширит запрос.

Однако у вас не будет атрибута memberUid для группы в ADAM, как в OpenLDAP или тому подобном, что было бы еще проще в поиске. Хотя, конечно, вы могли бы сохранить его и использовать вместо этого. (memberUid обычно является просто коротким именем пользователя, а не полным именем пользователя, которое обычно находится в member).

Ответ №2:

 ldapsearch -xb 'dc=example,dc=com' '(amp;(cn=*)(memberUid=USER))'
  

где USER — это uid, о котором вы хотите знать

Ответ №3:

В зависимости от того, на каком сервере каталогов размещены ваши данные, вы можете запросить атрибут memberOf or isMemberOf в своем запросе поиска LDAP, чтобы определить, к каким группам принадлежит пользователь. В записи блога «Использование класса объектов groupOfUrls» приведен пример такого типа поиска.

Комментарии:

1. Привет, Терри, я использую ADAM (сервер каталогов Microsoft), поскольку у меня есть значения конечного узла. Я должен выполнять поиск снизу, поэтому я не понимаю, как искать группы только по значению uid.