LDAP

3 года назад

Nikolai Gagarinov

Ответы

0

LDAP (англ. Lightweight Directory Access Protocol — «облегчённый протокол доступа к каталогу») — это протокол доступа к службе директорий для сети Интернет. Он позволяет получать информацию из каталога в формате X.500, а также выполнять различные операции с этой информацией, такие как поиск, добавление, изменение и удаление записей. LDAP используется для организации централизованного хранения информации о пользователях и ресурсах сети, а также для аутентификации пользователей при доступе к ресурсам.

3 года назад

Елена Редькина

0

LDAP — это протокол облегченного доступа к каталогам (Lightweight Directory Access Protocol), который определяет правила взаимодействия с каталоговыми базами данных по сети. Он используется для получения, изменения и проверки данных, организованных в иерархическую структуру.

Каталог представляет собой специализированный тип базы данных. В нем хранятся краткие сведения об объектах: пользователях, устройствах, ресурсах. В отличие от классических баз данных, каталог оптимизирован под быстрый поиск и чтение, а не под частые изменения.

Протокол LDAP работает поверх стека протоколов передачи данных (TCP/IP) и обеспечивает унифицированный способ обращения к службе каталогов независимо от ее реализации.

Назначение LDAP

Протокол используется для решения следующих задач:

  • доступ к данным каталога по сети;

  • поиск записей по заданным параметрам;

  • сравнение значений атрибутов;

  • добавление и изменение записей;

  • удаление данных;

  • аутентификация пользователей;

  • разграничение прав доступа.

LDAP не описывает внутреннюю архитектуру сервера. Он задает только правила обмена данными между клиентом и службой каталогов.

Где применяется LDAP

Протокол используется в системах, где требуется централизованное хранение и быстрый доступ к информации. Основные области применения:

  • управление пользователями в корпоративных системах;

  • хранение данных об организации и ее структуре;

  • централизованная аутентификация;

  • управление доступом к ресурсам;

  • интеграция различных информационных систем.

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

Принципы хранения данных

Информация в LDAP представляется в виде пар «ключ — значение». Каждая такая пара называется атрибутом.

Пример:

1
2
3
имя: Иван
фамилия: Петров
должность: инженер

Каталог ориентирован на операции чтения. Это делает его эффективным для данных, которые редко изменяются, но часто запрашиваются.

К таким данным относятся:

  • учетные записи пользователей;

  • контактные данные;

  • сведения об устройствах;

  • организационная структура.

Основные компоненты LDAP

Структура каталога состоит из нескольких ключевых элементов.

Атрибуты

Атрибут — минимальная единица хранения информации. Он включает:

  • имя поля (ключ);

  • значение.

Имена атрибутов заранее определяются схемой. Это обеспечивает единообразие структуры данных.

Записи

Запись — это набор атрибутов, описывающих одну сущность. Она аналогична строке в реляционной базе данных.

Пример записи сотрудника:

1
2
3
4
имя: Анна
фамилия: Смирнова
должность: бухгалтер
отдел: финансы

Каждая запись имеет уникальное имя в структуре каталога.

Иерархическое дерево данных (DIT)

DIT (Directory Information Tree — информационное дерево каталога) представляет собой древовидную структуру.

Особенности:

  • у каждой записи есть один родитель;

  • допускается неограниченное количество дочерних элементов;

  • корневая запись не имеет родителя.

Структура напоминает файловую систему:

1
2
3
4
5
6
7
Компания
 ├── Отдел продаж
 │    ├── Сотрудник 1
 │    └── Сотрудник 2
 └── Отдел разработки
      ├── Сотрудник 3
      └── Сотрудник 4

Такое построение позволяет логически группировать данные.

Классы объектов

Класс объекта определяет набор допустимых атрибутов для записи. Он задает тип сущности.

Пример:

  • класс «сотрудник»:

    • имя;

    • фамилия;

    • должность;

    • отдел.

Классы могут наследоваться друг от друга. Это позволяет создавать специализированные типы:

  • сотрудник отдела продаж;

  • сотрудник отдела разработки.

Каждый из них может иметь дополнительные атрибуты.

Схемы

Схема — это описание структуры каталога. Она включает:

  • определения классов;

  • перечень атрибутов;

  • ограничения на значения.

Схемы задают правила, по которым формируются записи. В одной системе может использоваться несколько схем, которые могут ссылаться друг на друга.

Принцип работы LDAP

Протокол взаимодействует с деревом данных. Все операции выполняются относительно определенной точки в структуре.

Основные действия:

  • поиск записи по фильтру;

  • чтение атрибутов;

  • добавление новой записи;

  • изменение существующей;

  • удаление записи.

Пример запроса поиска:

(должность=менеджер) Такой фильтр вернет все записи, где атрибут «должность» имеет указанное значение.

LDAP выполняет поиск по дереву. При этом:

  • обход структуры происходит по уровням;

  • скорость зависит от глубины вложенности;

  • чрезмерная вложенность снижает производительность.

LDAP-сервер

LDAP-сервер — это система, которая хранит каталог и обрабатывает запросы.

Его функции:

  • хранение данных;

  • обработка запросов клиентов;

  • контроль доступа;

  • обеспечение безопасности.

Клиент обращается к серверу с запросом, сервер возвращает результат или выполняет операцию изменения.

Аутентификация и безопасность

LDAP используется для проверки личности пользователя. Процесс включает:

  • ввод учетных данных;

  • проверку их в каталоге;

  • выдачу прав доступа.

Механизмы безопасности позволяют:

  • ограничивать доступ к данным;

  • задавать права на уровне записей;

  • защищать передачу информации по сети.

Особенности использования

LDAP эффективен в сценариях, где:

  • данные редко изменяются;

  • требуется быстрый поиск;

  • используется большое количество запросов на чтение.

Ограничения:

  • не подходит для частых изменений;

  • сложная настройка структуры;

  • зависимость производительности от глубины дерева.

Пример использования

Типичная структура каталога в организации:

1
2
3
4
5
6
7
dc=company
 ├── ou=users
 │    ├── uid=user1
 │    └── uid=user2
 └── ou=groups
      ├── cn=admins
      └── cn=employees

Здесь:

  • dc — домен;

  • ou — организационная единица;

  • uid — пользователь;

  • cn — имя группы.

Такая структура позволяет быстро находить пользователей и управлять доступом.

LDAP остается ключевым инструментом для централизованного хранения и обработки справочной информации в распределенных системах.

7 месяцев назад

Nikolai Gagarinov

0

LDAP (Lightweight Directory Access Protocol, облегчённый протокол доступа к каталогам) — протокол, по которому программы читают и меняют данные в каталоге: списке пользователей, групп, компьютеров организации. Чаще всего через LDAP проверяют логин и пароль сотрудника и узнают, в какие группы он входит.

Простыми словами

В компании 500 сотрудников и 30 внутренних сервисов: почта, Wiki, Jira, VPN. Если в каждом сервисе свой список пользователей, админ заводит и удаляет сотрудника 30 раз. Поэтому все учётные записи лежат в одном каталоге, а сервисы обращаются к нему по LDAP. Сотрудник уволился — его блокируют в каталоге, и доступ пропадает везде.

Где используется

  • Active Directory — каталог Microsoft в Windows-сетях. Сервисы подключаются к нему по LDAP.
  • OpenLDAP, FreeIPA — каталоги для Linux.
  • Keycloak, GitLab, Jira, Grafana — умеют брать пользователей из LDAP.

Как устроены данные

Каталог хранит записи в виде дерева. У каждой записи есть имя, которое не повторяется в каталоге, — DN (Distinguished Name):

1
uid=ivanov,ou=people,dc=example,dc=com
ЧастьЗначение
dcкомпонент домена: example.com
ouподразделение: people, groups
uid, cnимя пользователя или объекта

Запись состоит из атрибутов:

1
2
3
4
5
dn: uid=ivanov,ou=people,dc=example,dc=com
uid: ivanov
cn: Иван Иванов
mail: ivanov@example.com
memberOf: cn=developers,ou=groups,dc=example,dc=com

Пример запроса

Найти пользователя утилитой ldapsearch:

1
2
ldapsearch -x -H ldap://ldap.example.com \
  -b "dc=example,dc=com" "(uid=ivanov)" cn mail
  • -H — адрес сервера;
  • -b — с какого места дерева искать;
  • (uid=ivanov) — фильтр;
  • cn mail — какие атрибуты вернуть.

Порты и безопасность

LDAP работает на порту 389. Без шифрования пароль идёт по сети открытым текстом. Поэтому используют LDAPS на порту 636 или команду StartTLS на порту 389.

LDAP и Active Directory

LDAP — протокол. Active Directory — продукт Microsoft, каталог со своими функциями: групповые политики, Kerberos, DNS. LDAP — один из способов обращаться к Active Directory.

Работу с пользователями, группами и правами на серверах разбирают на курсе «Администрирование Linux».

17 дней назад

Никита Вихров

+7 800 100 22 47

бесплатно по РФ

+7 495 085 21 62

бесплатно по Москве

108813 г. Москва, вн.тер.г. поселение Московский,
г. Московский, ул. Солнечная, д. 3А, стр. 1, помещ. 20Б/3
ОГРН 1217300010476
ИНН 7325174845