LDAP: как искать данный uid в нескольких подразделениях? - PullRequest
1 голос
/ 30 июня 2009

Прежде всего, позвольте мне начать с того, что я совершенно новичок в работе с LDAP.

Я работаю над приложением, которое использует сервер LDAP с несколькими устаревшими приложениями.

Все учетные записи пользователей в унаследованном приложении организованы в организационные единицы по идентификаторам. Каждая запись имеет uid, который является адресом электронной почты пользователя.

Я могу определить, существует ли в организационной единице 12345 пользователь с адресом электронной почты some@email.com, используя dn примерно так: ou=someGroup,ou=12345,uid=some@email.com

Однако я хотел бы проверить наличие пользователя в нескольких подразделениях. Например, я хотел бы иметь возможность проверить, используется ли электронная почта с произвольным числом организационных единиц. (например, проверьте в 12345, 23452 и 34352).

После поисков, кажется, я смогу найти несколько записей с одним dn, но я не понял, как проверить этот сценарий.

Кто-нибудь знает, как я могу сделать такую ​​проверку? Я использую Spring LDAP.

1 Ответ

1 голос
/ 30 июня 2009

Полагаю, вы должны сделать это следующим образом:

В качестве поискового DN укажите только компоненты домена:

BASE_DN = "DC = TEST, DC = COM"

В качестве фильтра укажите свой CN или uid

FILTER = "UID = bob"

При поиске обязательно укажите «sub» или свой специфичный для Spring LDAP параметр, чтобы выполнить поиск во всем поддереве ниже базового DN.

В зависимости от настроек может потребоваться поиск по ссылкам всегда разыменования.

...