Avanpost FAM/MFA+ : 3.5.12 Avanpost IdP ЕСИА Адаптер

Avanpost ESIA IdP Adapter — серверный компонент, реализующий функции сервера OpenID Connect и клиента ЕСИА. ESIA IdP Adapter выступает в роли посредника между OIDC-клиентом (приложением) и ЕСИА, обеспечивая аутентификацию пользователя через ЕСИА по протоколу OAuth 2.0 с использованием Authorization Code Flow и PKCE. Компонент подписывает запросы к ЕСИА с помощью Crypto PRO CSP, проверяет подпись токенов, полученных от ЕСИА, и передаёт пользователю токены после успешной аутентификации. Также ESIA IdP Adapter выполняет дополнительные запросы к API ЕСИА для получения данных о пользователе.

Avanpost ESIA IdP Adapter выполняет следующие функции:

  • Выступает как Identity Provider (IdP) для OIDC-клиентов, обрабатывая запросы на аутентификацию.
  • Перенаправляет пользователя в ЕСИА при запросе от OIDC-клиента.
  • Формирует и отправляет запросы к ЕСИА и обрабатывает ответы от ЕСИА.
  • Выполняет запросы к API ЕСИА для получения информации о пользователе (например, ролей, организаций).
  • Обеспечивает безопасность при использовании небезопасных клиентов (например, в браузере) за счёт использования механизма PKCE.

Применение Avanpost ESIA IdP Adapter позволяет:

  • Использовать Crypto PRO CSP и утилиты cryptcp/csptest при выполнении и проверке цифровой подписи в соответствии криптографическими стандартами;
  • Реализовывать OpenID Connect (OIDC) и OAuth 2.0 с поддержкой PKCE, что обеспечивает безопасную аутентификацию и авторизацию в соответствии с международными стандартами;
  • Использовать государственную систему идентификации и аутентификации (ЕСИА) с учетом требований для государственных и корпоративных сервисов;
  • Поддерживать работу с различными OIDC-клиентами (приложениями), настраиваемыми через конфигурационные параметры;
  • Снижать нагрузку на клиентское приложение и повышать безопасность, т.к. клиентское приложение не взаимодействует напрямую с ЕСИА, а использует ESIA IdP Adapter в качестве посредника.

Описание работы механизма Avanpost ESIA IdP Adapter (в соответствии с представленной схемой): 

  1. OIDC-клиент (например, Avanpost FAM) отправляет запрос на аутентификацию Avanpost ESIA IdP Adapter.
  2. Avanpost ESIA IdP Adapter создает подпись для запроса с помощью Crypto PRO CSP.
  3. Avanpost ESIA IdP Adapter направляет запрос на аутентификацию в ЕСИА.
  4. ЕСИА возвращает авторизационный код (authorization_code) обратно Avanpost ESIA IdP Adapter.
  5. Avanpost ESIA IdP Adapter создает подпись для запроса токена с помощью Crypto PRO CSP.
  6. Avanpost ESIA IdP Adapter отправляет запрос на получение токена по authorization_code в ЕСИА.
  7. ЕСИА возвращает токен (access_token, refresh_token, id_token) Avanpost ESIA IdP Adapter.
  8. Avanpost ESIA IdP Adapter проверяет подпись полученного токена с помощью Crypto PRO CSP.
  9. Avanpost ESIA IdP Adapter делает запрос в API ЕСИА с использованием полученного токена для получения дополнительных данных о пользователе.
  10. ЕСИА возвращает данные о пользователе Avanpost ESIA IdP Adapter.
  11. Avanpost ESIA IdP Adapter возвращает авторизационный код (authorization_code) клиенту.
  12. OIDC-клиент отправляет запрос на получение токена Avanpost ESIA IdP Adapter.
  13. Avanpost ESIA IdP Adapter возвращает токен (access_token, refresh_token, id_token) OIDC-клиенту.

Сценарии использования

Аутентификация на корпоративном портале через ЕСИА

Корпоративный портал интегрируется с Avanpost ESIA IdP Adapter в качестве OIDC-клиента. При попытке входа сотрудник выбирает опцию входа через Госуслуги и перенаправляется в ЕСИА. В соответствии с принципом работы ESIA IdP Adapter после прохождения аутентификации токены возвращаются OIDC-клиенту (корпоративному порталу). Клиент использует токен для автоматического входа сотрудника в нужные сервисы без дополнительной аутентификации.

Создание локального аккаунта посредством аутентификации через ЕСИА

Образовательная платформа подключается к Avanpost ESIA IdP Adapter по протоколу OpenID Connect. При первом входе пользователь аутентифицируется через ЕСИА. После успешного завершения аутентификации ESIA IdP Adapter возвращает токен и данные профиля (email, ФИО, СНИЛС), полученные от ЕСИА, OIDC-клиенту. Платформа автоматически создаёт локальный аккаунт на основе полученных данных и обеспечивает SSO для смежных сервисов.

Привязка дополнительных данных к аккаунту пользователя

Пользователь успешно аутентифицируется в OIDC-приложении, используя Avanpost ESIA IdP Adapter. После успешной аутентификации ESIA IdP Adapter делает опциональный запрос к API ЕСИА для получения списка организаций, к которым привязан пользователь. Полученные данные используются для автоматического заполнения стандартизованных форм внутри OIDC-приложения и верификации полномочий заявителя.

Упрощенный механизм аутентификации в приложениях с поддержкой PKCE

Мобильное приложение (OIDC-клиент) использует Authorization Code Flow с PKCE для безопасной аутентификации через Avanpost ESIA IdP Adapter. ESIA IdP Adapter берёт на себя всю сложность взаимодействия с ЕСИА и работы с криптографическими стандартами (подпись через Crypto PRO), позволяя мобильному приложению работать с простым и стандартным OIDC-интерфейсом.




Обсуждение