Skip to content

Интеграция с Active Directory

Интеграция Webim с Active Directory позволяет использовать доменные учётные записи для входа операторов в административную часть Webim, управлять правами доступа через группы безопасности Active Directory и синхронизировать данные операторов.

N.B.

Данная функциональность является тарифной опцией. Чтобы её подключить, обратитесь, пожалуйста в техническую поддержку Webim или к вашему аккаунт-менеджеру.

Назначение интеграции

Интеграция Webim с Active Directory решает следующие задачи:

  • Единый вход (SSO). Операторы входят в Webim под доменной учётной записью без отдельного пароля. Для аутентификации используется Kerberos.

  • Централизованное управление доступом. Права операторов и доступные им отделы определяются членством в группах безопасности Active Directory. Эти группы сопоставляются с группами безопасности в Webim.

  • Автоматическое создание и обновление операторов. При первом успешном входе через Active Directory оператор может быть создан автоматически. При последующих входах и при синхронизации данные оператора актуализируются по данным Active Directory, в соответствии с настройками SSO.

  • Фоновая и ручная синхронизация операторов. Webim может периодически синхронизировать данные операторов с Active Directory и выполнять синхронизацию по запросу администратора. При включённой периодической синхронизации используется брокер сообщений Kafka.

Задействованные компоненты

В интеграции участвуют следующие компоненты:

  • Webim Server. Обрабатывает запросы операторов, выполняет аутентификацию и авторизацию, обновляет данные операторов и управляет очередями синхронизации.

  • Active Directory. Источник данных о пользователях и группах безопасности. Участвует в Kerberos-аутентификации и отвечает на LDAP-запросы.

  • Kerberos. Механизм аутентификации, используемый при SSO-входе. В доменной инфраструктуре предоставляется контроллером домена.

  • LDAP/LDAPS. Протокол доступа к каталогу. Используется для получения данных о пользователях и их членстве в группах.

  • Kafka. Используется для фоновой синхронизации операторов с данными Active Directory (при включенной периодической синхронизации).

Карта документации по интеграции с Active Directory

Задача Статья
Настройка Kerberos (SPN, keytab, krb5.conf и параметры Kerberos) Интеграция с Active Directory: настройка Kerberos
Настройка подключения к LDAP/LDAPS и параметры поиска пользователей Интеграция с Active Directory: настройка LDAP
Включение SSO и выбор режима авторизации операторов Интеграция с Active Directory: SSO и режимы авторизации
Настройка группы безопасности Webim и работы операторов с Active Directory Интеграция с Active Directory: операторы и группы безопасности
Диагностировать ошибки Kerberos, LDAP, SSO и синхронизации Интеграция с Active Directory: диагностика и типовые ошибки

Ограничения и требования

Требования к доменной инфраструктуре

  • Развёрнут контроллер домена Active Directory.

  • В домене созданы:

    • учётные записи пользователей, которые будут работать в Webim;

    • группы безопасности, через которые будет управляться доступ операторов.

  • Настроены SPN и keytab для Kerberos-аутентификации (см. статью Настройка Kerberos).

Требования к серверу Webim

Сетевой доступ к контроллеру домена

Сервер Webim должен иметь возможность подключаться к контроллеру домена по сети. Ниже перечислены сетевые порты, которые должны быть разрешены между сервером Webim и контроллером домена:

  • DNS — TCP/UDP 53. Нужен для разрешения доменных имён и служебных SRV-записей, которые используются Kerberos и LDAP.

  • NTP — UDP 123. Нужен для синхронизации времени. Для Kerberos критично, чтобы время на сервере Webim и на контроллере домена совпадало (расхождение приводит к ошибкам аутентификации).

  • Kerberos (KDC) — TCP/UDP 88. Порт службы Kerberos на контроллере домена. Используется при входе операторов через SSO.

  • LDAP — TCP 389. Используется Webim для получения данных о пользователях и их группах безопасности в домене.

  • LDAPS — TCP 636. Используется вместо LDAP, если в конфигурации LDAP включён параметр use_ssl=true.

Пакеты и утилиты на сервере Webim

На сервере Webim должны быть установлены клиентские утилиты Kerberos и LDAP (для работы и диагностики). Например:

  • Debian/Ubuntu: krb5-user, libsasl2-modules-gssapi-mit, ldap-utils.

  • RHEL-подобные: krb5-workstation, cyrus-sasl-gssapi, openldap-clients.

Синхронизация времени

Время на сервере Webim должно быть синхронизировано с временем на контроллере домена. Существенное расхождение приводит к ошибкам Kerberos-аутентификации.

Kafka для фоновой синхронизации

Kafka требуется только для периодической синхронизации операторов с Active Directory (параметр sso.enable_periodic_synchronization=true).

Сервис Admin Backend должен быть запущен с параметром --kafka-connection, который указывает на именованное подключение из файла /etc/webim/kafka.json.

Минимальный пример /etc/webim/kafka.json:

{
  "my_local_kafka": {
    "bootstrap_servers": "kafka:9092",
    "user": "webim",
    "password": "secret"
  }
}

Внутри подключения используются поля:

  • bootstrap_servers — список брокеров Kafka (как строка, например kafka1:9092,kafka2:9092).

  • user, password — учётные данные SASL (PLAIN), используемые Admin Backend при подключении к Kafka.

Если периодическая синхронизация отключена, Kafka для интеграции с Active Directory не требуется.


Последнее обновление страницы: 23 марта 2026 г.