Аутентификация через web SSO
В разделе описан механизм аутентификации через сторонних провайдеров по протоколам OpenID Connect (включает OAuth2).
Термины и определения
- IdP (identification provider, identity provider) — провайдер идентификации и аутентификации — сторонняя система, к которой SMP обращается за подтверждением аутентификации пользователей (например, Microsoft ADFS, Аванпост, Keycloak и прочее).
- idP identifier — коды параметров пользователя на сервере авторизации (idP), которые будут использоваться для идентификации пользователя.
- SP (service provider) — система, в которую происходит вход, в нашем случае это SMP.
- SMP identifier — коды атрибутов сотрудника в SMP, которые будет использоваться для идентификации пользователя.
- SSO (single sign-on) — принцип аутентификации, когда различные системы обеспечивают аутентификацию внутрь себя через провайдеров аутентификации. Пользователю достаточно аутентифицироваться в провайдере аутентификации, а вход во все остальные системы будет реализован через прозрачную аутентификацию. Сами SP не хранят аутентифицирующие данные (например пароль).
Включение и настройка аутентификации по протоколу SSO
Чтобы включить механизм аутентификации через SSO в конфигурационном файле dbaccess.properties в параметре ru.naumen.core.authentication.authenticators (Аутентификация и авторизация) добавьте аутентификатор EXTERNAL.
Для настройки аутентификации через SSO используется конфигурационный файл external-settings.xml с параметрами подключения, который размещается на сервере SMP. Параметры конфигурационного файла зависят от протокола.
Работа по протоколу в рамках определенного idP
Шифрование определенных атрибутов в конфигурационных файлах
При установке в dbaccess.properties свойства encryption.enabled в значение true (Безопасность) или выполнения методов Groovy API из группы api.encryption
Использование аутентификации через SSO в мобильном приложении определяется параметром "Тип аутентификации":