ADSI для различных служб каталогов, a Windows 2000 Server имеет поставщика ADSI для Active Directory.
![]() |
Рис 23.6. Открытое решение С использованием ADSI |
В основе ADSI лежит модель СОМ-объектов, что упрощает написание сценариев доступа к каталогу. Например, администратор может создать сценарий для присвоения значений некоторым элементам Active Directory. Разработчики программных продуктов могут использовать данный API, например, для анализа элементов каталога. Для низкоуровневого программирования на C/C++ Active Directory также имеет стандартный LDAP API, который определяется как набор вызовов С-функций и описан в RFC 1823. Интерфейсы ADSI являются одним из компонентов Open Directory Service Interfaces (ODSI, Интерфейсы службы открытого каталога), входящих в Windows Open Services Architecture (WOSA, Архитектура открытых служб Windows). Для наглядности основные достоинства ADSI перечислены в табл. 23.1.
Таблица 23.1. Достоинства Active Directory Service Interface (ADSI)Характеристика | Преимущества |
Открытость | Любой поставщик службы каталога может создать ADSI-provider; пользователи могут выбирать любую удобную им службу каталога, сохраняя все возможности ее администрирования |
Независимость от службы каталогов | Инструменты администрирования не привязаны к конкретной службе каталога, и одно приложение может работать с различными каталогами. Это уменьшает затраты на проектирование и сопровождение программ |
Поддержка Java | С помощью Java COM объекты ADS! обеспечивают апплетам и приложениям Java простой доступ к службам каталогов |
Безопасность | ADSI поддерживает программные модели аутентификации (Authentication model) и авторизации (Authorization model) |
Простая модель программирования | Можно создавать административные и другие ориентированные на использование каталогов программы, не вдаваясь в детали API конкретного производителя службы каталога |
Сервер автоматизации OLE | Для создания приложений, работающих с каталогами, можно использовать любые средства разработки контроллеров автоматизации OLE (Visual Basic, PERL, Rexx, C/C++ и другие). Администраторы и разработчики могут использовать любые знакомые им инструменты проектирования, что увеличивает эффективность их работы |
Большой набор функций | Одни и те же модели ADSI можно использовать как для написания простых сценариев, так и для создания сложных приложений |
Расширяемость | Поставщики служб каталогов, ISV и конечные пользователи могут добавлять в ADSI новые объекты и функции, расширяющие возможности интерфейсов или отвечающие частным требованиям |