Синхронизация пользователей из службы каталогов
SaluteJazz Sync Tool — приложение для синхронизации пользователей из службы каталогов с SaluteJazz.
Приложение позволяет управлять пользователями в SaluteJazz на основе службы каталогов вашей компании, совместимой с протоколом LDAP. После синхронизации новые пользователи автоматически становятся доступны в личном кабинете администратора Studio. Удаленные из службы каталогов пользователи автоматически удаляются из личного кабинета администратора Studio.
Совместимость и требования
- Операционная система:
- Windows 10 и выше/Server 2016 и выше;
- Из семейства Linux, с версией ядра 2.6.32 и выше;
- Из семейства macOS 10.15 Catalina и новее.
- LDAP-совместимая реализация службы каталогов. Актуальные совместимые версии:
- OpenLDAP: версия 2.4 и выше;
- Active Directory: совместимая с Windows 10 и выше или Server 2016 и выше.
- Сетевой доступ (
ldap: TCP/UDP
) между сервером, на котором запускается приложение, и сервером, на котором установлена служба каталогов; - Сетевой доступ (
http
) между сервером, на котором запускается приложение, иsalutejazz.ru
; - Личный кабинет Studio c активным проектом;
- Доступ к вкладке SSO и генерации Secret в личном кабинете Studio;
- Сертификат Минцифры.
- Актуальная версия приложения.
Настройка SaluteJazz Sync Tool
Чтобы синхронизировать пользователей из службы каталогов с SaluteJazz, запустите приложение SaluteJazz Sync Tool в следующем формате:
Имя приложения:
sync
Синтаксис:
sync [global options] command [command options]
Глобальные опции:
--ldap value [ --ldap value ]
Строка. Передает все атрибуты для подключения к службе каталогов. Если сотрудники в организации распределены по нескольким службам каталогов, для каждой из служб добавляется отдельная строка. Содержит URL, необходимо экранировать спецсимволы.
--sync-mode value
Режим синхронизации. Возможные значения: full и diff
--batch-size value (default: 50)
Максимальный размер отправляемой за раз порции данных (количество записей). По умолчанию значение 50.
--ldap-debug (default: false)
Включает логирование запросов к службе каталогов.
--client-id value
Идентификатор проекта из кабинета Администратора.
--secret value
Строка. В паре с идентификатором client-id позволяет приложению авторизоваться в платформе.
Команды:
--help, -h
Отображает список команд или опции для конкретной команды.
Пример запуска приложения
sync.exe --ldap="connectionURL=ldap://192.168.0.1:389&bindDN={Administrator}&usersDN=CN=test-user,DC=example,DC=com,DC=tech&emailAttribute=mail&protocol=LDAP&bindPassword={Password}&email&uniqueAttribute=objectGUID&importAttributes=inetOrgPerson:in_org_pers, organizationalPerson:age&filter=(%26(objectClass=*))&searchScope=20&paging=1000&vendor=other&emailAttribute=mail&givenNameAttribute=givenName&surnameAttribute=middle_name"
--sync-mode=diff
--secret=LbVdTzGQjJDhqy7l95jno255MEsq5o5U08JhaiNL1AOr4xK7
--client-id=af50d8b7-6f60-4a59-9def-cd678e15ab68
Описание атрибутов
Атрибуты подключения к LDAP:
Параметр | Описание | Пример | Обязательный |
---|---|---|---|
protocol | Протокол взаимодействия. Всегда LDAP | protocol=LDAP | Да |
connectionURL | Адрес подключения к LDAP-серверу. Есть возможность указать порт | connectionURL=ldap://192.168.0.1:389 | Да |
bindDN | Учетная запись администратора. Уникальное имя DN - это адрес в каталоге, определяющий учетную запись. Например: cn=ldap-sync,cn=test-user,dc=customer-01,dc=lab,dc=s2b,dc=tech означает, что используется учетная запись пользователя ldap-sync из каталога test-user на сервере customer-01.lab.s2b.tech | bindDN=Administrator | Да |
bindPassword | Пароль администратора | bindPassword=ПарольАдминистратора | Да |
vendor | Тип реализации каталога LDAP, к которому подключается приложение. Возможны два значения: msad , other | vendor=other | Да |
Атрибуты синхронизации пользователей:
Параметр | Описание | Пример | Обязательный |
---|---|---|---|
usersDN | Полное название дерева LDAP, в котором находятся пользователи (дерево, которое является родительским для пользователей LDAP). Например, 'ou=users,dc=example, dc=com' , для пользователя uid=john,ou=users,dc=example,dc=com | usersDN=CN=test-user,DC=customer-01,DC=lab,DC=s2b,DC=tech | Да |
emailAttributte | Всегда принимает значение атрибута, в котором содержится адрес почты, например, из атрибута mail | emailAttribute | Да |
givenNameAttributte | Атрибут, который содержит имя пользователя | givenNameAttribute=givenName | Да |
surnameAttribute | Атрибут, который содержит фамилию пользователя | surnameAttribute=cn | Нет |
importAttributes | Импортируемые из AD в Keycloak параметры, парами через запятую. Первое значение из пары — параметр AD, второе — соответствующий атрибут Keycloak. Все пары значений атрибутов objectClass для пользователей в LDAP разделяются запятыми | importAttributes=inetOrgPerson:string, organizationalPerson:string | Нет |
uniqueAttribute | Атрибут, который обеспечивает уникальность пользователя в Active Directory. Имя атрибута LDAP, который используется в качестве уникального идентификатора объекта (UUID) для объектов в LDAP. Для многих поставщиков серверов LDAP это значение entryUUID , но не для всех. Для Active Directory это должно быть значение objectGUID . Если ваш LDAP-сервер не поддерживает понятие UUID, вы можете использовать любой другой атрибут, который должен быть уникальным среди пользователей LDAP в дереве. Например, entryDN | uniqueAttribute=objectGUID | Да |
filter | Дополнительный фильтр LDAP для фильтрации пользователей. | filter=(%26(objectClass=*)) | Да |
searchScope | Количество уровней каталога, которые нужно обойти для поиска пользователей. 1 — только текущий уровень, N — несколько поддеревьев от текущего уровня | searchScope=2 | Да |
paging | Максимальный размер порции данных при запросе из AD. Положительное целое число | paging=1000 | Да |