Функциональную структуру Active Directory можно представить в виде многоуровневой архитектуры, в которой уровни являются процессами, предоставляющими клиентским приложениям доступ к службе каталога. Active Directory состоит из трех уровней служб и нескольких интерфейсов и протоколов, совместно работающих для предоставления доступа к службе каталога. Три уровня служб охватывают различные типы информации, необходимой для поиска записей в БД каталога. Выше уровней служб в этой архитектуре находятся протоколы и API-интерфейсы, осуществляющие связь между клиентами и службой каталога.
На рис. изображены уровни службы Active Directory и соответствующие им интерфейсы и протоколы. Стрелки показывают, как различные клиенты получают при помощи интерфейсов доступ к Active Directory.
· Системный агент каталога (Directory System Agent, DSA).Выстраивает иерархию родительско-дочерних отношений, хранящихся в каталоге. Предоставляет API-интерфейсы для вызовов доступа к каталогу.
· Уровень БД.Предоставляет уровень абстрагирования между приложениями и БД. Вызовы из приложений никогда не выполняются напрямую к БД, а только через уровень БД.
· Расширяемое ядро хранения.Напрямую взаимодействует с конкретными записями в хранилище каталога на основе атрибута относительного составного имени объекта.
· Хранилище данных (файл БД NTDS.DIT).Управляется при помощи расширяемого механизма хранения БД, расположенного в папке WinntNTDS на контроллере домена.
· Клиенты получают доступ к Active Directory, используя механизмы, поддерживаемые DSA.
· LDAP/ADSI.Клиенты, поддерживающие LDAP, используют его для связи с DSA. Active Directory поддерживает LDAP версии 2 (описан в RFC 1777). Клиенты Windows 2000, Windows 98 и Windows 95 с установленными клиентскими компонентами Active Directory для связи с DSA используют LDAP версии 3.
· API-интерфейс обмена сообщениями (Messaging API, MAPI,Messaging Application Programming Interface).Традиционные клиенты MAPI, например Microsoft Outlook, подключаются к DSA, используя интерфейс поставщика адресной книги MAPI RPC(Remote Procedure Call)
· Диспетчер учетных записей безопасности (Security Accounts Manager, SAM).Клиенты Windows NT версии 4.0 или более ранней используют интерфейс SAM для связи с DSA. Репликация срезервных контроллеров в домене смешанного режима также выполняется через интерфейс SAM.
· Репликация (REPL).При репликации каталога, агенты DSA взаимодействуют друг с другом, используя патентованный интерфейс RPC.