Механизмы именования в Active Directory
Каждый домен в Windows 2000 имеет DNS-имя, однако DNS-имена не применяются для именования отдельных элементов базы данных Active Directory. Вместо "этого следует использовать имена, принятые в LDAP. Согласно требованиям протокола LDAP один (или – очень редко – несколько) из атрибутов элемента каталога служит для именования этого элемента. Например, для идентификации экземпляра (элемента) объектного класса user может быть задействовано значение атрибута сn; а для объекта класса organizational Unit – значение атрибута оu.
На рис. 23.2 показана гипотетическая структура очень простого домена Windows 2000 для компании BHV. Предположим, что эта компания имеет два структурных подразделения (отдел продаж и редакционную группу) и доменное имя компании – bhv.com. По функциональным обязанностям члены редакционной группы делятся на администрацию и редакторов. Практически в любом домене для деления пространства имен используются подразделения или организационные единицы (OU), и демонстрационный домен – не исключение. Ниже корня домена располагаются два подразделения: sales (отдел продаж) и office (редакционная группа). Имя каждого подразделения определяется значением ее атрибута оu.
Рис. 23.2 Структура каталога простого домена Windows 2000
Примечание
Объектам Active Directory (в частности, подразделениям) можно давать и русские имена (возможно, из нескольких слов). Однако, если локальная сеть подключается к Интернету, нужно учитывать, что в стандартных интернетовских DNS-именах разрешены только латинские буквы!
Ниже подразделения sales располагаются объекты класса user. Имя.каждого объекта определяется атрибутом en (Common-Name), и эти объекты хранят информацию о пользователях домена. Организационная единица office делится еще на два подразделения: Admins и Editors. Ниже располагаются элементы каталога для отдельных работников, имена которых также определяются атрибутами ou.
Для получения информации о некотором элементе, например, Director, клиент должен указать уникальное имя этого элемента, которое называется отличительным, или различающимся именем (distinguished name). Отличительное имя – это набор имен, отражающих путь от корня дерева домена до интересующего элемента. Для элемента Director, например, отличительным именем будет cn=Director, ou=Admms, dc=bhv, dc=eom. В последних двух элементах имени dc означает domain component, эти элементы представляют DNS-имя домена в соответствии с соглашениями LDAP.
Отличительные имена уникальным образом идентифицируют узлы в базе данных Active Directory, однако их нельзя назвать "дружественными". Можно не перечислять в имени все типы атрибутов явно (cn=, ou=, dc= и т. п.), а записать это имя как //bhv.com/Admins/Director. В передаваемых LDAP-пакетах всегда указывается отличительное имя, однако в пользовательском интерфейсе можно применять более удобную и простую форму имени. Помимо отличительного имени каждый объект каталога имеет относительное отличительное имя (relative distinguished name), которое является атрибутом самого этого объекта, а не образуется как цепочка имен до объекта от корня дерева.
Таким образом, для элемента Director, например, относительным отличительным именем будет cn=Director. Для родительского объекта этого элемента относительное отличительное имя – ou=Admins. В Active Directory имеется несколько контекстов имен (naming contexts), или разделов (partitions), которые представляют собой законченные, непрерывные поддеревья каталога и являются объектами репликации. Каждый сервер с Active Directory имеет по меньшей мере три контекста имен:
- Схема (Schema), описывающая классы объектов и их атрибуты, хранящиеся в Active Directory.
- Конфигурация (Configuration) (топология репликации и связанные с ней метаданные, например, сведения о контроллерах домена).
- Один (в нашем примере – bhv.com) или несколько пользовательских, или доменных, контекстов имен (т. е. контекстов, содержащих реальные, рабочие объекты каталога), при этом контроллеры домена хранят реальные объекты только своего домена.