Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Sistema_TCP.docx
Скачиваний:
1
Добавлен:
01.03.2025
Размер:
603.97 Кб
Скачать

25. Структура данных ldap

Данные протокола LDAP принимают форму списков свойств, которые в мире LDAP называют “записями” (entry). Каждая запись состоит из набора именованных атрибутов (например, “uid”, “description”) и значений этих атрибутов. Пользователи, работающие в среде Windows, вероятно, заметят, что эта структура напоминает структуру записей в си­ стемном реестре. Как и в реестре Windows, отдельный атрибут может иметь несколько различных значений.

В качестве примера рассмотрим обычную (и упрощенную) строку файла /etc/passwd, выраженную в виде записи LDAP.

uid: ghopper

cn: Grace Hopper

userPassword: {crypt}$l$pZaGA2RL$MPDJoc0afuhHY6yk8HQFp0

loginShell: /bin/bash

uidNumber: 1202

gidNumber: 1202

homeDirectory: /home/ghopper

Здесь мы видим простой пример формата LDIF (LDAP Data Interchange Format — фор­ мат обмена данными LDAP), который применяется в большинстве инструментов, свя­ занных с LDAP, и в реализациях серверов. Причиной успеха этого формата является то обстоятельство, что LDAP можно без труда преобразовывать в простой текст и обратно.

Записи систематизируются по “отличительным именам” (имя атрибута: dn — distin­ guished name), которые формируют некоторую разновидность пути поиска. Например, запись dn для вышеупомянутого пользователя может выглядеть так.

dn: uid=ghopper, ou=People, dc=navy, dc=mil

Как и в DNS, самый значащий бит ставится справа. Здесь имя DNS navy.mil исполь­ зуется для построения верхних уровней иерархии LDAP. Оно разбивается на два компо­ нента домена: navy и mil, хотя это всего лишь одно из некоторых обычных соглашений.

Каждая запись имеет одно отличительное имя. Поэтому иерархия записей будет вы­ глядеть подобно простому ветвлению без циклов. Кроме того, существуют также и ре­ зервы для символических ссылок между записями и для отсылок на другие серверы.

Записи LDAP обычно составляются на основе использования атрибута objectClass (объектный класс). Классы объектов определяют атрибуты, которые может содержать за­ пись, причем некоторые из них могут требоваться для проверки достоверности. Каждому атрибуту назначается тип данных. Схема вложения и комбинирования классов объектов ничем не отличается от схемы, принятой в традиционном объектно-ориентированном программировании. Верхний уровень дерева класса объектов называется top; он озна­ чает лишь то, что запись должна иметь атрибут objectClass.

В табл. 19.2 приведены некоторые обычные атрибуты LDAP, назначение которых с первого взгляда может быть непонятным.

Глава 19. Совместное использование системных файлов 775

Таблица 19.2. Некоторые имена атрибутов, которые можно встретить в иерархиях LDAP

Атрибут Расшифровка Назначение

O Organization (организация) Часто идентифицирует запись верхнего уровня сайтаa

Ou Organization unit (организаци­ Логическое подразделение, например “marketing” онная единица) (отдел маркетинга)

Сn Common name (обычное имя) Наиболее естественное имя, с помощью которого можно передать смысл записи

Dc Domain component (компонент Используется в сайтах, в которых иерархия построена домена) на основе DNS

objectClass Object class (объектный класс) Схема, в соответствии с которой формируются атри­ буты данной записи

а Обычно не используется системами, в которых LDAP-иерархия построена на основе DNS.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]