Выбор протокола взаимодействия#

При интеграции приложения с Blitz Identity Provider для проведения идентификации и аутентификации пользователя следует выбрать один из протоколов взаимодействия:

  • OpenID Connect 1.0 (OIDC) / OAuth 2.0 – современный SSO-протокол, изначально ориентированный на работу с веб-приложениями и мобильными приложениями в сети Интернет.

    Совет

    Если создается новое приложение, то рекомендуется подключить его к Blitz Identity Provider с использованием OIDC/OAuth 2.0.

  • SAML 1.0/1.1/2.0 – SSO-протокол, позволяющий подключить различное корпоративное ПО или облачные приложения к сервису входа.

    Внимание

    Подключаемое приложение должно иметь встроенную поддержку SAML или такая поддержка может быть добавлена в качестве дополнительной опции или через установку интеграционного коннектора/плагина.

Выбор протокола во многом зависит от того, какое приложение требуется подключить:

  • если приложение поддерживает один из SSO-протоколов, то стоит подключать его с использованием данного протокола;

  • если предложение не поддерживает протоколы, то следует провести его доработку – в этом случае рекомендуется поддержать взаимодействие по OIDC;

  • если приложение только создается, то на этой стадии целесообразно поддержать один из SSO-протоколов – поддержку OIDC реализовать проще, однако при использовании доступных библиотек SAML можно использовать и этот протокол.

В таблице ниже приведены некоторые особенности протоколов OIDC и SAML.

Особенности протоколов подключения

OIDC/OAuth 2.0

SAML 1.0/1.1/2.0

Способ обеспечения доверия между приложением и Blitz Identity Provider

Секрет приложения (обычно в виде строки), известный Blitz Identity Provider

Электронная подпись. И запросы на аутентификацию, и ответы – это подписанные XML‑документы

Способ взаимодействия

Через веб-браузер пользователя проходит аутентификация. Для завершения аутентификации серверная часть приложения должна сформировать HTTP-запрос в адрес Blitz Identity Provider

Обычно запрос на аутентификацию и ответ проходят через веб-браузер пользователя. Приложение и Blitz Identity Provider могут не иметь сетевой связности

Получение сведений о пользователе

Два способа получения данных о пользователе:

  • Приложение обращается к REST‑сервису Blitz Identity Provider и получает данные о пользователе в формате JSON. Приложение может продолжать получать данные о пользователе, даже когда пользователь завершает свою онлайн-сессию

  • Приложение получает данные пользователя из маркера идентификации (id_token в форме JWT), полученного от Blitz Identity Provider по результатам входа

Данные о пользователе содержатся в ответе на запрос на аутентификацию в формате XML. Приложение может получать от Blitz Identity Provider данные только в момент входа пользователя

Поддерживаемые приложения

Веб-приложения и мобильные приложения

Веб-приложения

Примечание

OIDC позволяет реализовать все основные сценарии SAML, но при этом используется более простой JSON/REST-протокол. Существенное преимущество OIDC – поддержка мобильных приложений.

Важно

Если подключаемое к Blitz Identity Provider приложение доработать невозможно, но при этом приложение представляет собой веб-приложение, развернутое в собственной инфраструктуре (on-premise), то подключить приложение к Blitz Identity Provider можно с использованием веб-прокси и специально реализованного в Blitz Identity Provider протокола Simple.