Интерфейсы службы активного каталога (ADSI)

Интерфейсы службы активного каталога (ADSI) являются программным интерфейсом к службам каталога. ADSI определяет некоторые интерфейсы COM, которые реализуются провайдерами ADSI. Это означает, что клиент может использовать различные службы каталога с одними и теми же программными интерфейсами. Классы среды .NET в пространстве имен System.DirectoryServices используют интерфейсы ADSI.

На следующем рисунке можно видеть некоторых провайдеров ADSI (LDAP, WinNT, NDS), которые реализуют интерфейсы COM, такие как IAD и IUnknown. Сборка System.DirectoryServices использует провайдеров ADSI:

Программирование активного каталога

Чтобы разрабатывать программы для активного каталога, мы используем классы из пространства имен System.DirectoryServices. С помощью этих классов можно запрашивать объекты, просматривать и обновлять свойства, а также вести поиск объектов.

В следующих сегментах кода простое консольное приложение C# демонстрирует применение классов в пространстве имен System.DirectoryServices.

Классы в System.DirectoryServices

Следующая таблица показывает основные классы в пространстве имен System.DirectoryServices:

Класс Описание
DirectoryEntry Этот класс является основным классом в пространстве имен System.DirectoryServices. Объект этого класса представляет объект в хранилище активного каталога. Мы используем этот класс для связывания с объектом, просмотра и обновления свойств. Свойства объекта представлены в PropertyCollection. Каждый элемент в PropertyCollection имеет в свою очередь PropertyValueCollection.
DirectoryEntries DirectoryEntries является коллекцией объектов DirectoryEntry. Свойство Children объекта DirectoryEntry возвращает список объектов в коллекцию DirectoryEntries.
DirectorySearcher Этот класс является основным классом, используемым для поиска объектов со специфическими атрибутами. Чтобы определить поиск, можно использовать класс SortOption и перечисления SearchScope, SortDirection и ReferalChasingOption. Результаты поиска находятся в классе SearchResult или SearchResultCollection. Мы также получаем объекты ResultPropertyCollection и ResultPropertyValueCollection.

Связывание

Чтобы получить значения объекта в активном каталоге, мы должны соединиться с активным каталогом. Процесс соединения называется связыванием. Путь доступа связывания может выглядеть следующим образом:

LDAP://dc01.globalknowledge.net/OU=Marketing, DC=GlobalKnowledge, DC=Com

Во время процесса связывания можно определить следующие позиции:

□ Протокол, определяющий используемого провайдера.

□ Имя сервера контроллера домена.

□ Номер порта серверного процесса.

□ Известное имя объекта для идентификации объекта, к которому требуется доступ.

□ Имя пользователя и пароль, если требуется другой пользователь для доступа к активному каталогу.

□ Можно также определить тип аутентификации, если требуется шифрование.

Протокол

Первая часть пути связывания определяет провайдера ADSI. Провайдер реализован как сервер COM; для идентификации можно найти идентификатор программы прямо в ключе HKEY_CLASSES_ROOT. Провайдеры, которых получают вместе с Windows 2000, перечислены в следующей таблице:

Протокол Описание
LDAP Сервер LDAP, такой как каталог Exchange и сервер активного каталога Windows 2000.
Добавить отзыв
ВСЕ ОТЗЫВЫ О КНИГЕ В ИЗБРАННОЕ

0

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

Отметить Добавить цитату