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

Синхронизация и авторизация с LDAP

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

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

В рамках данной статьи будет рассмотрен подход к реализации интегарции с 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.

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