-1

Я пишу запрос LDAP в Active Directory.

Я хочу найти пользователя в Active Directory в определенном подразделении.

Я запускаю LDAP Query (&(&(objectCategory=organizationalUnit)(objectClass=organizationalUnit)(ou=Hosted*)SAMAccountName=vvishwakarma)) но не работает

Помните, я хочу искать SAMaccount в определенном подразделении, а не во всем каталоге

3 ответа3

1

Хорошо, это очень старый вопрос, но мы надеемся, что он все еще полезен.

Я получил это, установив в моей базе запросов ldap соответствующее подразделение. ( Источник ).

В то время как вы обычно устанавливали бы свою базу на задействованные контроллеры домена, я заставил ее работать, установив для базы значение DN того OU я хотел. OU=Ops,DC=Big,DC=Co , например.

1

во-первых, вы используете неправильную объектную категорию и объектный класс. Вы, вероятно, можете исключить объектную категорию и класс вместе, если только не существует вероятность, что существует группа с одинаковым именем samAccountname.

Что это дает вам?

(&(objectClass=user)(ou=Hosted*)(SAMAccountName=vvishwakarma))
1

Я надеюсь, что это решит хотя бы некоторые ваши проблемы.

Первое, что вам нужно сделать, это удалить неправильные objectCategories и objectClasses.

Затем вы должны установить свой searchDN в корень OU, который вы хотите искать:

Например, если вы хотите выполнить поиск по:

domain.local
    |- OUNameLvl1
        |-OUNameLvl2

SearchDN=OU=OUNameLvl2,OU=OUNameLvl1,DC=domain,DC=local

Тогда вы можете попробовать с:

(&(objectCategory=person)(objectClass=user)(sAMAccountName=vvishwakarma))

РЕДАКТИРОВАТЬ: я только что понял, вы сказали, что вы делаете это в Active Directory.

Если вы используете Active Directory - пользователи и компьютеры, вы можете определить пользовательский запрос, в котором вы будете делать то же самое, как описано выше - поместите корень поиска в OU, по которому вы хотите выполнить поиск, и затем используйте тот же LDAP-запрос.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .