Как включить несколько OU из учетной записи AD в один поиск с помощью PrincipleSearcher в asp.net С#

Сценарий: Active Directory поиск по имени пользователя должен возвращать результаты по элементу поиска (например, по имени или фамилии). Существует 6 стран, которые настроены как разные организационные единицы для учетных записей AD. например Великобритания (OU=Великобритания), Франция (OU=FR). Теперь пользователь должен отображаться с именем пользователя, которое может принадлежать либо OU=UK, либо OU=FR.

Я использую PrincipalSearcher из библиотеки System.DirectoryServices.AccountManagement

 PrincipalContext ctx = new PrincipalContext(ContextType.Domain, "myDomain",
                                                    "OU=UK,dc=comp,dc=com");

Проблема. Приведенное выше позволяет возвращать имена пользователей, принадлежащие только OU=UK.

Вопрос. Как добавить несколько организационных единиц в PrincipalContext.


person shaz    schedule 15.10.2013    source источник


Ответы (1)


Попробуйте изменить базовый объект на OU=UK,OU=FR,DC=dc,DC=sys.... это может сработать,

Подробности смотрите по следующей ссылке

http://ldapmaven.com/2011/07/27/mastering-ldapsearch/< /а>

ИЗМЕНИТЬ:

Кажется, что это невозможно, посмотрите следующую ссылку SO,

Синтаксис корневого запроса LDAP для поиска более чем одного конкретного ОУ

person Rajesh Subramanian    schedule 15.10.2013
comment
Я боюсь, что это не сработало, когда я пытался раньше и дал следующую ошибку: System.DirectoryServices.AccountManagement.PrincipalOperationException не было обработано пользовательским кодом. InnerException: System.DirectoryServices.DirectoryServicesCOMException Message=На сервере нет такого объекта. - person shaz; 15.10.2013
comment
Собственно сняв OU полностью обыскался по всему AD. Это работало для поиска имен пользователей среди всех пользователей в AD. - person shaz; 15.10.2013