LDAP

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

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

Как применяется

Приложение подключают по TLS, используют отдельную сервисную учётную запись с минимальными правами и безопасные фильтры поиска. Пароли не передают в открытом виде, а доступ к атрибутам и операциям ограничивают ACL каталога.

Пример применения

Корпоративное приложение выполняет bind сервисной учётной записью только для чтения и ищет пользователя по нормализованному идентификатору. Входные данные экранируются, StartTLS обязателен, а членство в административных группах не выдаётся приложению без необходимости.

Не путать с

  • Active DirectoryActive Directory — служба каталогов и набор доменных сервисов, поддерживающий LDAP.
  • KerberosKerberos выполняет аутентификацию по билетам

Как это работает

  1. Установить каналКлиент подключается к серверу каталога по LDAPS или корректно проверенному StartTLS.
  2. Выполнить bindСторона подтверждает право выполнять дальнейшие операции выбранным способом аутентификации.
  3. Обратиться к деревуПоиск или изменение выполняется в заданной base DN с фильтром, атрибутами и областью.
  4. Применить ACLКаталог разрешает операцию по правам, возвращает результат и регистрирует значимые действия.

Частые вопросы

LDAP хранит пароли?

Каталог может хранить данные для проверки, но LDAP лишь определяет протокольные операции; способ хранения зависит от сервера.

Безопасен ли простой bind?

Только внутри защищённого TLS-канала; иначе учётные данные могут передаваться раскрываемым способом.

Что такое LDAP injection?

Это изменение логики фильтра через неэкранированный ввод; параметры нормализуют и экранируют по синтаксису LDAP.

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