Аутентификация

Для аутентификации пользователей Геном использует протокол OpenID Connect и внешний провайдер идентификации (Identity Provider, IdP), в роли которого могут выступать:

  • FAM Avanpost;

  • Basis Virtual Security;

  • Keycloak.

При успешной аутентификации пользователи могут использовать одну и ту же учётную запись для доступа ко всем сервисам Геном.

Служба аутентификации имеет следующие особенности:

  • Данные устаревших сессий очищаются автоматически.

  • Для обновления токенов доступа используются токены обновления.

  • Для обновления токенов доступа Геном обращается к IdP.

  • Геном получает информацию о пользователе из данных, указанных в токене доступа.

  • Все токены хранятся в зашифрованном виде.

Поведение Keycloak при интеграции с Active Directory

Keycloak поддерживает интеграцию с Active Directory (далее — AD). Ниже перечислены особенности, которые необходимо учитывать при работе Keycloak с AD.

  • При блокировке пользователя в AD он не сможет войти в Геном. Будет возникать ошибка с указанием на неверные логин или пароль.

  • При изменении списка групп пользователя в AD данные в Keycloak обновятся при плановой синхронизации данных.

  • При исключении пользователя из всех групп, связанных с ролями Геном, отключение пользователя произойдёт после синхронизации Keycloak с AD при новой попытке входа в систему. Если в момент синхронизации была активная сессия, пользователь сможет пользоваться Геном до истечения срока жизни токена.

  • Время отключения пользователя можно регулировать:

    • Через включение параметра Periodic changed users sync и указания Changed users sync period в Keycloak в Configure  User federation  LDAP provider  Synchronization settings. Чем меньше значение, тем чаще будут синхронизироваться пользователи между AD и Keycloak.

    • Через изменение в Keycloak параметра Configure  Realm settings  Tokens  Access token  Access Token Lifespan, который управляет, как часто будут обновляться токен пользователя и его полномочия в виде ролей.

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

  • при завершении сессии в административном интерфейсе Keycloak;

  • по истечении срока жизни активного токена;

  • при принудительной синхронизации Keycloak с AD.

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