Интеграция с каталогом AD/LDAP
При орагнизации корпоративного доступа к сервису ВИДЕОСЕЛЕКТОР предусмотрена возможность использования доменных учетных записей посредством интеграции с Active Directory.
Для настройки интеграции необходимо авторизоваться на сервисе Keycloak и выполнить настройки внешних каталогов как описано в этой статье.
Авторизуйтесь на сервисе Keycloak
Перейдите в интерфейс администратора
Откройте поддерживаемый браузер и в адресной строке введите адрес https://<ip-адрес сервера>:8090, нажмите "Enter"
Авторизуйтесь под учетной записью Администратора системы
Перейти в интерфейс администратора можно также через сервис "ВИДЕОСЕЛЕКТОР", нажав в левом глобальном меню "Настройки". Доступен пользователью с правами администрирования сервера.
Перейдите в интерфейс настройки LDAP системы входа KeyCloak
Перейдите к модулю "Интеграция": "Настройки" - "Модули" - "Интеграция"
В разделе LDAP нажмите ссылку "Параметры подключения"
На открывшейся странице авторизации сервиса Keycloak (согласно указанному домену при установке) введите учетные данные (?)
Перейдите к настройкам сервера выбрав на главной странице "Консоль администратора"
Начните настройку LDAP.
Настройка LDAP
Переход в нужный REALM
На этапе установки (ссылка на установку) создаётся REALM с именем по умолчанию: videoselector
Realm - область управления, которая содержит совокупность всех данных: пользователей, учетные данные, роли и группы; необходимых для аутентификации и авторизации пользователей данного realm. Каждый realm изолирован от других realm-ов.
В списке доступных
realm-ов выберите нужную область управления (videoselector):
Перед любыми действиями с realm необходимо убедиться, что Вы находитесь в целевом realm.
Настройка LDAP-провайдера
Перейдите в раздел "User Federation"
В открывшейся вкладке нажмите на кнопку " Add Ldap providers ":
Заполните требуемые поля настройками сервера (указать какие поля, пример данных для заполнения, какие параметры обязательно надо включить?), к которому будет осуществляться подключение для авторизации
Проверьте успешность подключения к LDAP-провайдеру:
Для авторизации на сервере каталогов крайне нежелательно использовать учётную запись администратора!
Это избыточно и небезопасно!
Для подключения к LDAP достаточно учётной записи с правами на чтение группы, поскольку при авторизации от доменной учётной записи авторизация проводится на стороне сервера каталогов.
В разделе "Connection and authentication settings" нажмите кнопку "Test connection"
Дождитесь сообщения об успешном подключении (всплывающее окно с подтверждением)
В случае проблем с соединением надо проверить доступность сервера LDAP по указанному адресу, а также проверить работоспособность УЗ и правильность введенных данных.
Сохраните настройки, нажав "Save"
Настройка LDAP mapper-ов
Для корректной авторизации и настройки отображения логинов при входе в Keycloak, требуется настроить соответствующие текущему рабочему окружению mapper-ы. В каждой организации они свои, поэтому логично рассмотреть в качестве примера одну из самых распространённых служб каталогов - Microsoft Active Directory.
Перейдите на вкладку "Mappers"
Приведите параметры в соответствие с табличными значениями (значения взяты для некой организации, активно использующей active directory для хранения пользовательских данных).
В зависимости от провайдера службы каталогов, поля для синхронизации могут называться по-разному. Необходимо указывать те поля, что требуется синхронизировать с локальной базой учётных записей.
При отсутствии mapper-ов для дополнительных полей (например, JobTitle, mail, phone), информация по ним не будет автоматически синхронизирована в базу ВИДЕОСЕЛЕКТОР)
Сравнение mapper-ов в установке по умолчанию и действующей службе каталогов
Mapper-ы keycloak в Realm по умолчанию (на этапе установки)
# |
Наименование |
User Model Attribute |
LDAP Attribute |
1 |
creation date |
createTimestamp |
whenCreated |
2 |
|
|
|
3 |
first name |
firstName |
givenName |
4 |
last name |
lastName |
sn |
5 |
modify date |
modifyTimestamp |
whenChanged |
6 |
MSAD account controls |
- |
- |
7 |
username |
username |
cn |
Mapper-ы keycloak после приведения их к совместимости с внешней службой каталогов.
# |
Наименование |
User Model Attribute |
LDAP Attribute |
1 |
creation date |
createTimestamp |
whenCreated |
2 |
department |
department |
department |
3 |
displayName |
displayName |
displayName |
4 |
|
|
|
5 |
first name |
firstName |
givenName |
6 |
full name |
- |
displayName |
7 |
jobTitle |
jobTitle |
title |
8 |
last name |
lastName |
sn |
9 |
modify date |
modifyTimestamp |
whenChanged |
10 |
username |
username |
cn |
Жирным шрифтом выделены mapper-ы, которые требуется создать или отредактировать действующие для корректной синхронизации пользовательских данных.
Редактирование mapper-ов
Рассмотрим редактирование на примере одного из уже существующих в списке mapper-ов - "last name".
Перейдите к редактированию mapper-а "last name" просто кликнув по нему
В открывшемся окне детальной конфигурации mapper-а "mapper details" приведите данные в соответствие табличному значению
При необходимости измените значения полей:
User Model Attribute (встроенный атрибут keycloak)
LDAP Attribute (соответствующий ему атрибут в корпоративном LDAP, согласно таблице)
Сохраните внесенные изменения, нажав кнопку "Save" ("Сохранить", в зависимости от локализации).
Перейдите к редактированию следующего атрибута.
Создание mapper-а
В случае отсутствия необходимого mapper-а в списке добавьте его:
В разделе "Mappers" нажмите кнопку " Add mapper "
В открывшейся странице выбираем имя и соответствующие атрибуты, опираясь на данный из таблицы выше
При добавлении нового mapper-а стоит учитывать значение поля "Mapper Type". Его тип "User Attribute LDAP Mapper"
Подтвердите создание mapper-a, нажав кнопку "Save" ("Сохранить", в зависимости от локализации)
Синхронизация пользовательских групп со службами каталогов (OpenLDAP, MS AD и т.д.)
В случае необходимости присутствует возможность настроить синхронизацию пользовательских групп videoselector с сервером каталогов через Keycloak. Это не является обязательной настройкой, однако позволяет значительно упростить администрирование учётных записей сервиса, сохранив группировку учётных записей по заданным критериям.
Для синхронизации пользовательских групп videoselector с сервером каталогов через Keycloak необходимо настроить 2 mapper-а:
на получение списка групп (Groups mapper)
на синхронизацию пользователей (MSAD account controls)
Как это сделать смотри в разделах выше "Редактирование mapper-ов" и "Создание mapper-ов".
Настройки атрибутов производятся в соответствии с табличными данными ниже.
Groups MAPPER
Наименование |
Значение по умолчанию |
Mapper type |
group-ldap-mapper |
LDAP Groups DN |
ou=groups,dc=example,dc=org |
Group Name LDAP Attribute |
cn |
Group Object Classes |
group |
Membership LDAP Attribute |
member |
Membership Attribute Type |
DN |
Membership User LDAP Attribute |
member |
Mode |
READ_ONLY |
User Groups Retrieve Strategy |
LOAD_GROUPS_BY_MEMBER_ATTRIBUTE |
Member-Of LDAP Attribute |
memberOf |
Groups Path |
/ |
MSAD account controls
Наименование |
Значение по умолчанию |
Name |
MSAD account controls |
Mapper type |
msad-user-account-control-mapper |
Список пользовательских групп videoselector, которые необходимы администратору для синхронизации, находится в разделе сервиса "Настройки" подраздел "Группы администрирования". Заполнение списка осуществляется в соответствии с группами ActivDirectory.
Поздравляем! Настройка интеграции завершена!
Можно выполнять авторизацию с использованием локальной или доменной учётной записи.
Параметры, указанные в примере конфигурации могут различаться для разных LDAP, при необходимости рекомендуется воспользоваться документацией LDAP и Keycloak.