Агент синхронизации Yandex Identity Hub Sync Agent
Примечание
Функциональность доступна только в регионе Россия.
Агент синхронизации Yandex Identity Hub Sync Agent выполняет чтение данных о пользователях и группах пользователей в выбранных Organization Units (OU) в каталоге Active Directory и синхронизирует их с данными пользователей и групп пользователей в пуле Yandex Identity Hub.
Скрипт установки агента синхронизации доступен для следующих операционных систем:
Аутентификация на стороне Active Directory
На стороне Active Directory агент синхронизации получает данные пользователей и групп от имени аккаунта, созданного в домене Active Directory. При получении этих данных используются протоколы LDAP
Вне зависимости от операционной системы сервера, на котором установлен агент синхронизации, аутентификация агента на стороне Active Directory может осуществляться по имени и паролю пользователя домена или с использованием протокола Kerberos
Кроме того, при установке агента синхронизации на сервер с ОС Windows аутентификацию агента на стороне Active Directory можно настроить от имени аккаунта gMSA.
Совет
Аккаунт gMSA является предпочтительным способом аутентификации в Active Directory, так как не требует сохранения пароля в файле конфигурации агента или ключей Kerberos на сервере.
Аутентификация на стороне Yandex Cloud
На стороне Yandex Cloud агент синхронизации управляет пользователями и группами пользователей от имени сервисного аккаунта с назначенными разрешениями на выполнение синхронизации. Запросы к Yandex Cloud направляются на публичный эндпоинт https://organization-manager.api.yandexcloud.kz по протоколу HTTPS
Процесс синхронизации
В процессе синхронизации данных агент Yandex Identity Hub Sync Agent может создавать, изменять или удалять пользователей и группы пользователей в Yandex Identity Hub. Синхронизация пользователей и групп Yandex Identity Hub с пользователями и группами в Active Directory выполняется в два этапа: первичная синхронизация и инкрементальная синхронизация.
При выполнении синхронизации в пуле пользователей может обнаружиться пользователь или группа пользователей с именами, идентичными именам пользователя или группы, которые требуется синхронизировать. В этом случае агент, в зависимости от заданных настроек, перезапишет данные из Active Directory для существующего пользователя или группы Yandex Identity Hub, либо выведет сообщение об ошибке.
Полная (первичная) синхронизация
При выполнении полной синхронизации агент считывает данные всех пользователей, групп и их атрибутов в выбранных Organization Units в каталоге Active Directory и создает аналогичных пользователей и группы с аналогичными атрибутами в пуле пользователей Yandex Identity Hub.
Процесс первичной синхронизации для большого количества объектов может занять достаточно длительное время. Если процесс полной синхронизации прервется в результате ошибки, повторный запуск агента продолжит синхронизацию с того места, на котором прервалась предыдущая попытка. Прогресс полной синхронизации агент отслеживает с помощью файлов с токенами процессов в директории с запущенным агентом:
main_sync_replication_token.jsonpassword_hash_replication_token.jsonuser_control_replication_token.json
После успешного завершения полной синхронизации агент, запущенный в виде сервиса или службы операционной системы, переходит к непрерывному выполнению частичной (инкрементальной) синхронизации.
Совет
Вы можете повторно запустить процесс полной синхронизации. Для этого удалите указанные выше файлы с токенами процессов и перезапустите агент.
Частичная (инкрементальная) синхронизация
Инкрементальная синхронизация непрерывно выполняется запущенным агентом со следующей периодичностью:
- Синхронизация паролей и состояний пользователей — агент отслеживает статус блокировки/разблокировки пользователей в домене Active Directory и смену пользовательских паролей и переносит эти изменения в Yandex Identity Hub с интервалом в несколько секунд. Частоту выполнения этого типа синхронизации изменить нельзя.
- Синхронизация иных значений — агент отслеживает прочие изменения свойств, атрибутов и параметров пользователей и групп с интервалом, установленным в файле конфигурации агента.
Тестовый запуск (dry run)
Агент Yandex Identity Hub Sync Agent можно запустить в тестовом режиме (dry run). Этот режим позволяет убедиться в корректности вносимых в конфигурацию агента изменений прежде чем применять эти изменения в рабочем режиме.
В режиме тестового запуска агент не вносит изменения в данные пользователей и групп Yandex Identity Hub. Вместо этого он тестирует выполнение всех операций, вызванных вносимыми в конфигурацию агента изменениями, и сохраняет результаты этих тестов в логах работы агента.
Подробнее о том, как запустить агент в режиме dry run, читайте в разделе Протестируйте изменения в конфигурации агента.
Отслеживаемые изменения
В процессе непрерывной синхронизации агент отслеживает следующие изменения в Active Directory и переносит их в Yandex Identity Hub:
- создание, изменение, блокировка, разблокировка и удаление пользователей;
- создание, изменение и удаление групп пользователей;
- изменение атрибутов пользователей и групп;
- добавление пользователей в группы и исключение их из групп;
- изменение паролей пользователей.
Если для учетной записи пользователя на стороне Active Directory задано значение поля accountExpires, агент синхронизирует это значение с полем Дата деактивации (expires_at) в свойствах локального пользователя Yandex Identity Hub. При наступлении момента, указанного в этом поле, локальный пользователь Yandex Identity Hub будет автоматически деактивирован.
В этом случае, чтобы повторно активировать пользователя, измените или удалите значение поля accountExpires для учетной записи пользователя на стороне Active Directory.
Логирование процесса синхронизации
Агент Yandex Identity Hub Sync Agent регистрирует события, возникающие в процессе синхронизации.
По умолчанию информация о событиях и ошибках выводится в стандартный потокstdout. В конфигурации агента вы можете задать настройки для сохранения логов в файлы.
По умолчанию информация о событиях в стандартный поток или файл выводится в простом текстовом формате, но в конфигурации агента формат можно изменить на JSON
В конфигурации агента вы также можете настроить выгрузку логов в лог-группу Yandex Cloud Logging.
Кроме того, в конфигурации агента можно задать следующие уровни логирования:
debuginfowarnerrordpanicpanicfatal
Проверка прав доступа к файлам с аутентификационными данными
При запуске агент синхронизации может проверять права доступа, назначенные файлам, которые используются агентом и содержат чувствительные данные:
- файл конфигурации агента может содержать пароль к учетной записи пользователя, от имени которого агент выполняет синхронизацию на стороне Active Directory;
- файл
keytabсодержит ключи шифрования, необходимые для аутентификации в Active Directory по протоколу Kerberos; - файл с авторизованным ключом сервисного аккаунта содержит ключ, позволяющий получить доступ к Yandex Cloud.
Если проверка прав доступа включена, при запуске агент синхронизации проверяет соблюдение следующих условий:
- владельцем файлов является пользователь, от имени которого запускается агент;
- права на чтение и запись для файлов предоставлены только их владельцу (
chmod 600).
- для файлов отключено наследование прав доступа;
- полный доступ (разрешение
FullAccess) к файлам имеют только субъектыSystem,Local Administratorи/или субъекты, входящие в группуBUILTIN\Administrators; - разрешение на чтение файлов есть только у пользователя, от имени которого запускается агент.
Если при запуске агент выявляет нарушение указанных условий, запуск завершается ошибкой.
Включить или отключить проверку прав доступа к файлам с чувствительной информацией можно с помощью параметра check_config_permissions конфигурации агента.
Конфигурация агента
Конфигурация агента синхронизации задается в YAML
Примеры конфигурации приведены в инструкции по настройке синхронизации, а описание полей — в разделе Параметры конфигурации агента.
Полезные ссылки
- Синхронизация пользователей и групп с Microsoft Active Directory
- Синхронизировать пользователей и группы с Microsoft Active Directory
gMSA (group Managed Service Account) — это тип учетных записей в Microsoft Active Directory, паролями для которых автоматически управляет контроллер домена, что упрощает запуск и работу одной и той же службы (SPN) на разных серверах. Подробнее читайте в документации Microsoft