Unified Identity Management logo figure Unified Identity Management logo figure

External Authentication

Аутентификация в SSO через внешнюю систему

Схема аутентификации

external auth with token

Логин Модуль ExternalJwtLoginModule

Модуль делегирует процесс аутентификации некоторой внешней системе путем редиректа на ее адрес Внешняя система может использовать любую цепочку аутентификации, после чего результат отправить редиректом обратно в SSO

Интеграция

SSO → External Auth Service

Задать настройку com.rooxteam.federation.authentication.baseUrl входной точкой логина во внешней системе. по этому адресу будут приходить GET запросы для аутентификации.

External Auth Service → SSO

В случае успешной аутентификации нужно сохранить имя пользователя и справочную информацию в виде зашифрованного токена (JWT) и записать в cookie из настройки com.rooxteam.federation.authentication.cookie.name (по умолчанию iPlanetDirectoryPro), время жизни токена должно быть несколько секунд. В случае неуспешной аутентификации нужно передать токен без информации о пользователе. В cookie из com.rooxteam.federation.authentication.backUrlCookie (по умолчанию sso_goto) должен быть записан обраный URL SSO, к этому URL необходимо добавить GET-параметр из com.rooxteam.federation.authentication.backStatusParam (по умолчанию auth_status) о статусе аутентификации (SUCCESS) и по полученному URL выполнить редирект.

Настройки

  • com.rooxteam.federation.authentication.decryptor.key - Ключ расшифровки JWT токена

  • com.rooxteam.federation.authentication.baseUrl - URL внешней системы аутентификации

  • com.rooxteam.federation.authentication.backUrlCookie - Имя Cookie где находится URL для обратного редиректа в SSO

  • com.rooxteam.federation.authentication.backStatusParam - Имя GET-параметра, в который внешняя система должна передать статус аутентификации

  • com.rooxteam.federation.authentication.cookie.name - Имя Cookie в которой передается JWT

  • com.rooxteam.federation.authentication.cookie.domain - Домен Cookie в которой передается JWT

  • com.rooxteam.federation.authentication.cookie.path - Путь Cookie в которой передается JWT