Открыть меню
Платформа Эра. Документация
Toggle preferences menu
Открыть персональное меню
Вы не представились системе
Your IP address will be publicly visible if you make any edits.

Синхронизация и авторизация с LDAP: различия между версиями

Материал из Платформа Эра. Документации
Строка 16: Строка 16:


= Загрузка пользователей из AD =
= Загрузка пользователей из AD =
[[Файл:Сценарий загрузки пользователей из Active Directory.png|центр|1318x1318px|мини]]
[[Файл:Сценарий загрузки пользователей из Active Directory.png|центр|1318x1318px|мини]]Каждый из важных этапов обработки помечен комментарием. Каждый из этих шагов рекомендуется настроить под свои нужды.[[Файл:Получение списка пользователей по LDAP.png|мини|Получение списка пользователей по LDAP]]
[[Файл:Получение списка пользователей по LDAP.png|мини|Получение списка пользователей по LDAP]]
 


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


Строка 53: Строка 52:


Полное описание работы компонента LDAP можно найти в [[Компоненты работы с данными#LDAP-интеграция|курсе по разработке]].
Полное описание работы компонента LDAP можно найти в [[Компоненты работы с данными#LDAP-интеграция|курсе по разработке]].
После получения данных в компоненте LDAP, происходит обработка резульата в цикле.
=== Проверка групп пользователя ===
[[Файл:Проверка наличия группы у пользователя.png|мини|365x365пкс|Проверка наличия группы у пользователя]]
Для каждого пользователя из списка необходимо проверить, включен ли он в группу пользователей платформы Эра. Для этого используется поиск подстроки в атрибуте memberOf.
Данный этап можно дополнительно кастомизировать и проверять несколько групп, в зависимости от чего в дальнейшем выдавать пользователям различные роли и права.
[[Категория:Практика]]
[[Категория:Практика]]
[[Категория:Администрирование]]
[[Категория:Администрирование]]

Версия от 15:08, 17 сентября 2025

Общая информация

В рамках данной статьи будет рассмотрен подход к реализации интегарции с Active Directory по протоколу LDAP.

Так же будут рассмотрены два основных кейса данной интеграции:

  • Загрузка пользователей из Active Directory
  • Авторизация пользователя по протоколу LDAP

Работа с LDAP в рамках платформы выполняется с помощью служебных сценариев, и в частности, компонента LDAP-интеграция.

Для синхронизации списка пользователей создается служебный сценарий, который получает список пользователей из AD с определнным фильтром, и создает/обновляет пользователей соответствующего домена платформы. С помощью Задачи (svctask) данный сценарий настраивается на выполнение по расписанию.

Для авторизации пользователя создается сценарий авторизации, который принимает авторизационные данные пользователя, выполняет запрос к AD и возвращает результат авторизации.

Для удобства работы, подготовлены шаблоны этих сценариев:

вставить шаблоны

Загрузка пользователей из AD

Каждый из важных этапов обработки помечен комментарием. Каждый из этих шагов рекомендуется настроить под свои нужды.

Получение списка пользователей по LDAP

Получение списка пользователей

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

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

CN=Users,DC=example,DC=com

В шаблоне в качестве примера получаются следующие атрибуты:

Атрибут Комментарий
objectGUID Идентификатор пользователя в AD
cn Имя пользователя
mobile Мобильный телефон
memberof Список групп, в которые входит пользователь
sAMAccountName Имя пользователя для логина
distinguishedName Полное имя пользователя
userPrincipalName Имя пользователя с указанием домена (в примере используется как email)

В строке поиска можно задать дополнительные фильтры.

Полное описание работы компонента LDAP можно найти в курсе по разработке.

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

Проверка групп пользователя

Проверка наличия группы у пользователя

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

Данный этап можно дополнительно кастомизировать и проверять несколько групп, в зависимости от чего в дальнейшем выдавать пользователям различные роли и права.