Поделиться через


Службы каталогов в .NET Framework

Обновлен: Ноябрь 2007

Доступ к службам каталогов и управление ими осуществляются с помощью управляемых API System.DirectoryServices, System.DirectoryServices.ActiveDirectory и System.DirectoryServices.Protocols. Все вместе эти API образуют законченное решение для создания управляемых приложений, в которых используются службы каталогов.

Ниже показано, как эти три управляемых API связаны друг с другом и с другими, неуправляемыми компонентами.

Службы каталогов платформы .NET

В этом подразделе

  • System.DirectoryServices Namespace Overview
    Обеспечивает доступ к Active Directory из управляемого кода. Средства из пространства имен System.DirectoryServices разработаны на базе ADSI. DirectoryEntry и DirectorySearcher являются двумя базовыми объектными типами. Все операции выполняются с использованием этих двух объектов.

    Для того чтобы пользоваться средствами из пространства имен System.DirectoryServices, не обязательно осваивать сложные концепции. Например, при использовании элементов управления LDAP для выполнения поиска с постраничным возвратом данных достаточно задать размер страницы и выполнить перебор полученных результатов. Всю остальную работу, от создания элемента управления страницы результатов, отправки запросов, получения cookie-файла страницы результатов и до выдачи повторных запросов выполняет System.DirectoryServices. Пользователю не требуется знать синтаксис каждого свойства, оно обрабатывается автоматически с использованием внутреннего сопоставления схемы.

    Пространство имен System.DirectoryServices предназначено для разработчиков, которым требуется быстро создавать бизнес-приложения и приложения с поддержкой служб каталогов.

  • System.DirectoryServices.ActiveDirectory Namespace Overview
    Данное пространство имен предоставляет объектную модель с высоким уровнем абстракции, основанную на задачах службы каталогов Active Directory. В этой модели реализованы такие концепции служба каталогов Active Directory, как лес, домен, узел, подсеть, раздел и схема.

    Пространство имен System.DirectoryServices.ActiveDirectory разработано на основе System.DirectoryServices и обладает функциональностью, подобнойSystem.DirectoryServices. В отличие от System.DirectoryServices или System.DirectoryServices.Protocols, предоставляющих общий доступ к каталогам, System.DirectoryServices.ActiveDirectory является более абстрактным и ориентировано на выполнение всех задач и операций, связанных со службой Active Directory и режимом Active Directory Application Mode (ADAM). Например, System.DirectoryServices.ActiveDirectory применяется для поиска контроллеров домена в определенном домене, для репликации экземпляров ADAM, настройки отношений доверия и создания топологий. Пространство имен System.DirectoryServices.ActiveDirectory разработано для администраторов, которым необходимо автоматизировать выполнение повседневных задач, и для ИТ-разработчиков, создающих бизнес-приложения, связанные с Active Directory или ADAM.

  • System.DirectoryServices.Protocols Namespace Overview
    Разработано для поддержки протокола LDAP (Lightweight Directory Access Protocol — легковесный протокол доступа к каталогам) и других подобных протоколов, в частности DSML (Directory Services Markup Language — язык разметки служб каталогов). Это не высокоуровневый абстрактный API. Объектная модель System.DirectoryServices.Protocols ориентирована на подключения; в ней запросы составляются и отправляются через подключение и ответы возвращаются через подключение. Модель System.DirectoryServices.Protocols разработана на базе API LDAP, написанного на языке программирования C. Ее создатели ставили своей целью достижение высокой производительности, при этом System.DirectoryServices.Protocols реализует полный набор функций LDAP. Дополнительными, более сложными элементами пространства имен System.DirectoryServices.Protocols являются: асинхронная модель, поддержка сертификатов и элементы управления LDAP. Это пространство имен предназначено для опытных разработчиков, которым требуется максимум контроля и гибкости для создания высокопроизводительных серверных приложений.

Связанные подразделы