Перейти к основному содержимому

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

Сотрудник входит в интерфейс HRlink под доменной учётной записью без повторного ввода логина и пароля. Для этого браузер получает Kerberos-билет для HRlink, передаёт его через механизм SPNEGO, а HRlink проверяет билет и сопоставляет доменную учётную запись с существующим пользователем.

Kerberos отвечает только за аутентификацию. Роли пользователя и доступные ему данные в HRlink не меняются.

Если сотрудники входят через корпоративный провайдер удостоверений по OAuth 2.0 или OpenID Connect, используйте корпоративный SSO.

Область применения

Интеграция доступна только для On-premises-поставки HRlink. Настройку выполняет инженер HRlink совместно с администратором Active Directory клиента. HRlink не предоставляет публичные API-методы для управления Kerberos-конфигурацией.

Как проходит вход

  1. Пользователь открывает адрес тенантаTenantЭкземпляр системы HRlink на отдельном домене (например, company.hr-link.ru). Внутри одного тенанта может быть несколько пространств клиентов. HRlink на доменном компьютере в корпоративной сети или через VPN.
  2. Браузер получает в Active Directory Kerberos-билет для SPN (Service Principal Name) тенантаTenantЭкземпляр системы HRlink на отдельном домене (например, company.hr-link.ru). Внутри одного тенанта может быть несколько пространств клиентов. HRlink и передаёт его через SPNEGO.
  3. HRlink проверяет билет и извлекает доменный идентификатор пользователя — Kerberos principal. Обычно он совпадает с UPN и имеет формат user@REALM.
  4. HRlink сопоставляет доменный идентификатор с существующим пользователем и открывает обычную пользовательскую сессию.

На настольном устройстве доступны два сценария:

  • HRlink запускает автоматический вход при открытии страницы, если ровно у одного активного провайдера Kerberos включён этот режим.
  • Пользователь запускает ручной вход по отдельной кнопке Kerberos.

Если автоматический вход завершается ошибкой, HRlink оставляет на странице способы входа, разрешённые настройками тенантаTenantЭкземпляр системы HRlink на отдельном домене (например, company.hr-link.ru). Внутри одного тенанта может быть несколько пространств клиентов.. После явного выхода HRlink не запускает автоматический вход повторно в той же вкладке. Пользователь может нажать кнопку входа или открыть HRlink в новой вкладке.

Кто участвует в подключении

УчастникЗадачи
Администратор Active DirectoryСоздаёт сервисную учётную запись, регистрирует SPN, выпускает keytab и настраивает браузеры
Сетевая команда клиентаПроверяет DNS, доступ доменных компьютеров к Active Directory и работу корпоративной сети или VPN
Инженер HRlinkНастраивает провайдера Kerberos для тенантаTenantЭкземпляр системы HRlink на отдельном домене (например, company.hr-link.ru). Внутри одного тенанта может быть несколько пространств клиентов., защищает keytab и проверяет вход тестового пользователя
Администратор HRlink клиентаПроверяет, что пользователи созданы в HRlink и у них подтверждены email-адреса

Подготовка Active Directory

1. Подготовьте сервисную учётную запись и SPN

Создайте в Active Directory отдельную сервисную учётную запись для HRlink. Зарегистрируйте для неё SPN:

HTTP/<tenantHost>@<REALM>

Пример:

HTTP/hrlink.company.local@COMPANY.LOCAL

Перед выпуском keytab проверьте, что этот SPN не зарегистрирован для другой учётной записи. Hostname в SPN должен совпадать с адресом тенантаTenantЭкземпляр системы HRlink на отдельном домене (например, company.hr-link.ru). Внутри одного тенанта может быть несколько пространств клиентов., который пользователи открывают в браузере.

2. Выпустите keytab

Выпустите keytab для той же сервисной учётной записи и того же SPN. Передайте файл инженеру HRlink по согласованному защищённому каналу. Не отправляйте keytab в открытый чат или обычным вложением по email.

HRlink хранит keytab в зашифрованном виде и не возвращает его через публичные интерфейсы.

3. Настройте браузеры

Добавьте hostname тенантаTenantЭкземпляр системы HRlink на отдельном домене (например, company.hr-link.ru). Внутри одного тенанта может быть несколько пространств клиентов. HRlink в список серверов, которым браузер может передавать Kerberos-билет:

БраузерНастройка
Google ChromeКорпоративная политика AuthServerAllowlist
Microsoft EdgeКорпоративная политика AuthServerAllowlist
Mozilla FirefoxПараметр network.negotiate-auth.trusted-uris

Пример значения доверенного адреса:

hrlink.company.local

Распространите настройки через групповые политики и проверьте их применение на тестовом доменном компьютере.

4. Проверьте пользователей

Kerberos не создаёт пользователей в HRlink. До проверки входа пользователь должен существовать в HRlink и иметь подтверждённый email-адрес.

При первом входе HRlink сравнивает доменный идентификатор с подтверждённым email-адресом пользователя без учёта регистра. Например, IVANOV@COMPANY.LOCAL совпадёт с ivanov@company.local. Если значения совпали, HRlink сохраняет привязку автоматически.

Если UPN в Active Directory отличается от email-адреса в HRlink, заранее сообщите оба значения инженеру HRlink. Инженер создаст явную привязку после подтверждения соответствия.

Данные для подключения

Передайте в Службу заботы заявку на подключение Kerberos и укажите:

ДанныеТребованияПример
Адрес тенантаTenantЭкземпляр системы HRlink на отдельном домене (например, company.hr-link.ru). Внутри одного тенанта может быть несколько пространств клиентов.Hostname, который пользователи открывают в браузереhrlink.company.local
RealmДомен Kerberos в верхнем регистреCOMPANY.LOCAL
KDC-хостыНепустой список контроллеров доменаdc01.company.local, dc02.company.local
SPNЗначение, зарегистрированное для сервисной учётной записиHTTP/hrlink.company.local@COMPANY.LOCAL
keytabФайл для указанного SPNСлужба заботы отдельно согласует защищённый канал передачи
Текст кнопкиНазвание доменного входа на странице HRlinkКорпоративная учётная запись
Автоматический входНужно ли запускать вход при открытии страницыДа или Нет
Тестовый пользовательUPN в Active Directory и подтверждённый email-адрес в HRlinkivanov@company.local

Не прикладывайте keytab к первичному обращению. Служба заботы согласует канал для передачи секрета отдельно.

Проверка после подключения

Проверяйте подключение на настольном компьютере, который входит в домен и получил браузерные политики:

  1. Откройте HRlink в новой вкладке и проверьте автоматический вход, если он включён.
  2. Выйдите из HRlink. В той же вкладке должна появиться страница входа без повторного автоматического входа.
  3. Нажмите кнопку Kerberos и проверьте ручной вход.
  4. Проверьте вход пользователя, у которого UPN совпадает с подтверждённым email-адресом в HRlink.
  5. Если UPN и email-адрес различаются, проверьте пользователя после создания явной привязки.
  6. Убедитесь, что разрешённые для тенантаTenantЭкземпляр системы HRlink на отдельном домене (например, company.hr-link.ru). Внутри одного тенанта может быть несколько пространств клиентов. альтернативные способы входа остаются доступны при ошибке Kerberos.

Данные для диагностики

Если вход не работает, передайте в Службу заботы:

ДанныеЧто указать
Адрес тенантаTenantЭкземпляр системы HRlink на отдельном домене (например, company.hr-link.ru). Внутри одного тенанта может быть несколько пространств клиентов.Полный hostname HRlink
Время ошибкиДата, точное время и часовой пояс
Идентификатор ошибкиЗначение errorId из сообщения HRlink; если показан errorCode, передайте и его
СценарийАвтоматический вход или вход по кнопке
Рабочее местоОперационная система, браузер и его версия
ПодключениеКорпоративная сеть или VPN
ПользовательUPN в Active Directory и email-адрес в HRlink
Наблюдаемое поведениеЕсть ли кнопка Kerberos, появляется ли запрос логина и работают ли альтернативные способы входа

Не передавайте пароль пользователя, Kerberos-билет, содержимое заголовка Authorization или keytab в обращении.

Ограничения

  • Kerberos доступен только в On-premises-поставке HRlink.
  • HRlink запускает автоматический вход и показывает кнопки Kerberos только на настольных устройствах. На мобильных устройствах используйте другие способы входа.
  • Основные поддерживаемые браузеры — Google Chrome и Microsoft Edge. Mozilla Firefox требует настройки доверенных URI, но HRlink не гарантирует совместимость. Safari не поддерживается.
  • HRlink запускает автоматический вход, только если этот режим включён ровно у одного активного провайдера. Если таких провайдеров несколько, пользователь выбирает кнопку вручную.
  • Интеграция действует на основной странице входа HRlink и не распространяется на единую страницу входа https://login.hr-link.ru.
  • Kerberos не создаёт пользователей и не меняет их роли. Пользователь должен быть создан в HRlink до первого входа.
  • Пользовательский интерфейс для управления конфигурацией отсутствует. Изменения выполняет инженер HRlink.