AD Connector — это интеграционный компонент, который обеспечивает синхронизацию пользователей и групп из Active Directory в DION.
Компонент предоставляет следующие возможности:
Обратите внимание: AD Connector не позволяет аутентифицировать пользователей по доменным учётным записям. Для аутентификации пользователей используйте технологию SAML SSO.
Обратите внимание: организация default техническая, не используйте ее для AD Connetctor.
AD Connector поддерживает выборку пользователей из нескольких контейнеров и групп в Active Directory, а также задание критериев выборки пользователей (исключаются рабочие станции, серверы и контроллеры доменов). Также имеется возможность установки расписания обновления данных.
AD Connector можно установить на отдельный сервер, или на один из наименее загруженных серверов Dion, например setup-vm.
Дистрибутив AD Connector можно скачать по ссылке.
синтаксис: dion-ad-connector [command] [arguments]
### Команды:
version - версия приложения
help - описание
### Для этих команд требуется указать файл конфигурации -config=ad-connector.yml
### Можно не указывать, если файл конфигурации находится в директории /etc/dion/ad-connector.yml
check-config - проверить корректность файла конфигурации
check-connect-ldap - проверить подключение к серверу Active Directory и показать несколько записей из AD
check-connect-dion - проверить подключение к Дион
get-users - показать пользователей из AD
[-limit 100] - лимит 0 или без флага - без лимита
[-encrypt] - шифровать данные
[-file] - сохранить в файлу. В конце к файлу добавиться порядковый номер файла
upload-file - выгрузить файл Дион. не более 4мб
-file - файл, который будет зашифрован и загружен в интеграционное api
get-schedule - получить расписание будущих запусков
[-limit 5] - кол-во следующих запусков. По умолчанию 5
sync-once - один раз получить данные из ldap и отправить их в Дион
sync - запуск получения данных из ldap и отправки в Дион по расписанию
### Переменные окружения
CLI_MODE=true - вывод в командную строку будет подкрашен
LOG_LEVEL=-1 - уровень логирования -1, 0, 1
### Сервис dion-ad-connector
systemctl status dion-ad-connector - состояние сервиса
systemctl restart dion-ad-connector - перезапустить сервис
systemctl stop dion-ad-connector - остановить сервис (до следующего перезапуска системы)
systemctl disable dion-ad-connector - выключить запуск сервиса при загрузке системы
journalctl -u dion-ad-connector -f - логи сервиса (если не указан файл логов в конфигурации)
Чтобы установить AD Connector, выполните следующие действия:
1. Скачайте и разархивируйте пакет AD Connector:
cd /home/dion/
wget https://api.eric.s3storage.ru/dion-static/ad-connector/dion-ad-connector-1.2.1.tar
tar -xf dion-ad-connector-1.2.1.tar
2. Установите пакет:
cd /home/dion/package
sudo dpkg -i dion-ad-connector-1.2.1.deb
3. Добавьте доверие к корневому сертификату сервера Dion:
cd /home/dion/on_dion/files/dion.YourDomain.com/certs/web
sudo cp rootCA.crt /usr/local/share/ca-certificates/rootCA.crt
sudo update-ca-certificates
4. Создайте интеграционный токен в Административной панели Dion:
a. Перейдите в раздел Организации → <Ваша организация> → Общие настройки → Интеграционные токены.
b. Нажмите на кнопку Добавить токен.
c. Введите описание токена, например AD Connector и нажмите Создать.
d. Скопируйте значение нового интеграционного токена, оно понадобится при редактировании конфигурационного файла далее.
e. Отредактируйте файл ad-connector.yml
следующим образом:
sudo nano /etc/dion/ad-connector.yml
- В блоке 1 укажите почтовый домен или несколько доменов для синхронизации через пробел:
domain_name: YourDomain.ru
- В блоке 2 укажите путь к публичному ключу. Он сгенерирован автоматически при установке Dion и находится на сервере setup-vm в каталоге on_dion/files/certs_files/ad_connector/
.
- Пропишите путь к публичному ключу:
public_key_file: /home/dion/on_dion/files/certs_files/ad_connector/customer-public.key
- В блоке 3 укажите адреса для интеграции и токен, созданный в административной панели Dion:
uri: https://api-integration-dion.YourDomain.ru/v1/customers/users
connection_test_uri: https://api-integration-dion.YourDomain.ru/v1/connection-test
token: XXX...
- В блоке 4 укажите данные для подключения к Active Directory:
url: dc.YourDomain.ru
port: 389
ldaps: false
switch_to_tls: true
unauthenticated_bind: false
user_dn: CN=ldapAdminUser,CN=Users,DC=YourDomain,DC=ru
password: ldapAdminUserPassword
base_dn: OU=DionUsers,DC=YourDomain,DC=ru
- В блоке 5 укажите атрибуты LDAP:
email: mail
name_attr: displayname
position_attr: title
- В блоке 6 укажите критерии поиска LDAP:
base_dn: OU=DionUsers,DC=YourDomain,DC=ru
filter: "(&(objectClass=user)(memberOf= CN=Dion Users,OU=Groups,DC=YourDomain,DC=com))"
5. Убедитесь, что необходимые почтовые домены прописаны в настройках организации административной панели Dion.
Зайдите на сервер с ролью DCM (setup-vm) и запустите скрипт интеграции, для каждого домена, перечисленного в ad-connector.yml
:
cd /etc/dion/dcm/scripts/
sudo chmod +x customer-updater-add-org.sh
./customer-updater-add-org.sh YourDomain.com
Адрес сервера с ролью DCM можно посмотреть на установочной машине в файле /home/dion/on_dion/inventories/dion.yourdomain.com/hosts
.
Внимание: На каждом сервере с ролью apps находится контейнер
st_customer_updater
.Если в вашей организации несколько серверов apps, отключите лишние контейнеры
st_customer_updater
таким образом, чтобы он работал только на одном из серверов apps.Например, имеется два сервера apps:
- apps-vm-01
- apps-vm-02
Чтобы отключить контейнер
st_customer_updater
на втором сервере, выполните команду на setup-vm:cd /home/dion/on_dion ./dion.sh -t st_customer_updater-down -l apps-vm-02
Чтобы запустить AD Connector, выполните следующие действия:
1. Сделайте тест работы на сервере, где установлен AD Connector:
dion-ad-connector check-config
dion-ad-connector check-connect-ldap
dion-ad-connector check-connect-dion
dion-ad-connector get-users
2. Если нет ошибок, запустите синхронизацию:
dion-ad-connector sync-once
После запуска синхронизации примерно через пять минут можно просмотреть логи загрузки пользователей в базу данных на сервере apps-vm:
docker logs st_customer_updater
Также см. раздел Известные проблемы 2024.10