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

Сквозная аутентификация

Сквозная аутентификация направляет пользователя в интерфейс HRlink без ввода логина и пароля. Интегратор формирует JWT с данными пользователя и перенаправляет браузер по redirect-ссылке ESAESA Сервис аутентификации внешних систем (esa.hr-link.ru). Через ESA интеграторы получают мастер-токены и реализуют сквозную аутентификацию..

Сквозная аутентификация использует тот же сертификат, iss и sub, что и мастер-токен. Если интегратор ещё не зарегистрирован, сначала выполните шаги из раздела Регистрация интегратора.

Шаг 1. Сформировать JWT

Header:

{
"alg": "RS256",
"typ": "JWT"
}

Payload:

{
"iss": "MyCompany",
"sub": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"aud": "esa.hr-link.ru",
"thn": "company.hr-link.ru",
"uid": "user-id-value",
"uit": "EXTERNAL_ID",
"iat": 1680000000,
"nbf": 1680000000,
"exp": 1680000600
}
ПолеОписание
issИздатель из регистрации интегратора
subIDid Внутренний идентификатор сущности в формате UUID, генерируемый HRlink при создании. Неизменяемый, используется во всех внутренних операциях. интегратора
audВсегда esa.hr-link.ru
thnХост тенантаTenant Экземпляр системы HRlink на отдельном домене (например, company.hr-link.ru). Внутри одного тенанта может быть несколько пространств клиентов.. Если не передать, HRlink определит тенантTenant Экземпляр системы HRlink на отдельном домене (например, company.hr-link.ru). Внутри одного тенанта может быть несколько пространств клиентов. по пользователю и интегратору
uidИдентификатор пользователя
uitТип идентификатора: HR_LINK_ID, SNILS или EXTERNAL_ID
estТип внешней системы при использовании EXTERNAL_ID, опционально
iat, nbf, expВременные метки, Unix timestamp в секундах

Подпишите JWT приватным ключом интегратора. Рекомендуемый алгоритм — RS256.

Шаг 2. Сформировать redirect-ссылку

Направьте пользователя по URL:

https://esa.hr-link.ru/redirect?code={JWT}&path={URL_ENCODED_PATH}&type=PASS_THROUGH_AUTH
ПараметрОписание
codeПодписанный JWT из шага 1
pathURL-encoded путь, на который ESAESA Сервис аутентификации внешних систем (esa.hr-link.ru). Через ESA интеграторы получают мастер-токены и реализуют сквозную аутентификацию. перенаправит пользователя после авторизации
typeВсегда PASS_THROUGH_AUTH

ESAESA Сервис аутентификации внешних систем (esa.hr-link.ru). Через ESA интеграторы получают мастер-токены и реализуют сквозную аутентификацию. проверит JWT, авторизует пользователя и перенаправит его на указанный путь в HRlink.

Безопасность

Не отправляйте ссылки сквозной аутентификации в email-уведомления и другие каналы, где ссылку может открыть другой человек.

Ошибки сквозной аутентификации

errorCodeПричина
51.205Истёк JWT (exp в прошлом)
51.206Нет обязательного поля: uid, uit, iss, sub или другого
51.207Подпись не прошла проверку
51.211Неподдерживаемый тип идентификатора в uit
51.300ТенантTenant Экземпляр системы HRlink на отдельном домене (например, company.hr-link.ru). Внутри одного тенанта может быть несколько пространств клиентов. из thn не найден
51.400Пользователь не найден в указанном тенантеTenant Экземпляр системы HRlink на отдельном домене (например, company.hr-link.ru). Внутри одного тенанта может быть несколько пространств клиентов.
51.401Пользователь связан с несколькими тенантамиTenant Экземпляр системы HRlink на отдельном домене (например, company.hr-link.ru). Внутри одного тенанта может быть несколько пространств клиентов. интегратора; передайте thn явно