Запись самого верхнего уровня в LDAP DIT (Directory Information Tree, информационном дереве каталога) в мире LDAP неоднозначно называется корневой (root), базовой (base) или суффиксом (suffix), в зависимости от документации, её автора, дня недели или каких-либо других переменных величин, доподлинно нам не известных.
Термин Root DSE определяет своего рода супер-корневую запись (суффикс), содержащую определения всех DIT, поддерживаемых сервером LDAP (в операционном атрибуте namingContexts), а также другие операционные объекты.
Существует несколько методов определения корневой записи или суффикса.
На этой странице описывается метод, основанный на подходе X.500. В нём используется ou=name, c=country (хотя никаких формальных стандартов определения корневой записи или суффикса X.500 не существует).
Как нам кажется, самый простой способ — использовать структурный объектный класс organizationalUnit, у которого всего один обязательный атрибут ou (organizationalUnitName), и специальный объектный класс extensibleObject для добавления атрибута c (country). Фрагмент LDIF для добавления корневой записи или суффикса:
## ОПРЕДЕЛЯЕМ DIT ROOT/BASE/SUFFIX #### ## используется формат X.500 ## замените example inc. и us любым подходящим текстом ## organizationalUnit - это СТРУКТУРНЫЙ объектный класс # требующий только наличия атрибута ou (organizationalUnitName) # но не содержащий c (country), который добавляется # с помощью extensibleObect # это последовательность ЗАПИСИ и ей предшествует ПУСТАЯ СТРОКА dn: ou=Example Inc.,c=us ou: Example Inc. objectclass: organizationalUnit description: Необязательное описание. Определение корневой записи или суффикса X.500. В эту строку можно поместить столько текста, сколько хотите в этой строке продолжение информации из предыдущей строки вплоть до 32Kb строка оканчивается либо на <CR>, либо на <CR><LF>, то есть отрабатывается ENTER с систем как Windows, так и *nix - новая строка ДОЛЖНА начинаться с ОДНОГО ПРОБЕЛА objectClass: extensibleObject c: us
Примечания:
Если в OpenLDAP используется динамическая конфигурация OLC (cn=config), следует указать ou=Example Inc.,c=us в качестве значения атрибута olcSuffix соответствующей записи olcDatabase. При использовании конфигурационного файла slapd.conf, нужно указать suffix "ou=Example Inc.,c=us" в разделе database.
В файле server.xml ApacheDS нужно указать suffix="ou=Example Inc.,c=us" в разделе <partitions><jdbmPartition ...>.
Добавление последующих записей показано в данном фрагменте LDIF:
## ПЕРВЫЙ уровень иерархии - люди (people) ## для объектных классов используется смешанная форма записи в верхнем и нижнем регистре # это последовательность ЗАПИСИ, она должна предваряться ПУСТОЙ строкой dn: ou=people, ou=Example Inc.,c=us ou: people description: All people in organisation objectclass: organizationalunit ## ВТОРОЙ уровень иерархии ## ДОБАВЛЯЕМ одну запись в ПЕРВЫЙ уровень (people) # это последовательность ЗАПИСИ, она должна предваряться ПУСТОЙ строкой # ou: Human Resources - это название подразделения dn: cn=Robert Smith,ou=people, ou=Example Inc.,c=us objectclass: inetOrgPerson cn: Robert Smith cn: Robert J Smith cn: bob smith sn: smith uid: rjsmith userpassword: rJsmitH carlicense: HISCAR 123
Проблемы, комментарии, предположения, исправления (включая битые ссылки) или есть что добавить? Пожалуйста, выкроите время в потоке занятой жизни, чтобы написать нам, вебмастеру или в службу поддержки. Оставшийся день Вы проведёте с чувством удовлетворения.
Нашли ошибку в переводе? Сообщите переводчикам!
Copyright © 1994-2017 ZyTrax, Inc. Все права защищены. Последнее изменение страницы: 4 марта 2016 г.
Переведено участниками проекта Pro-LDAP.ru в 2012-2017 г.