Релиз кандидат
...
Администрирование
Настройки SSO

Конфигурация SSO с Blitz Identity Provider

18min

Перед настройкой SSO убедитесь, что в config.env параметр APP_URL соответствует текущему домену Пассворка, пример — APP_URL=https://passwork.example.com

Это нужно, чтобы IDP смог скачать metadata. Также сервер Пассворка должен работать по HTTPS протоколу.

Для примера используются следующие имена серверов:

  • Провайдер (IDP) — blitz.passwork.local
  • Сервер Пассворка (SP) — passwork.example.com

Создание приложения в Blitz Identity Provider

В Blitz Console перейти на вкладку Приложения и Добавить приложение:

Document image


В Пассворке открыть Настройки и пользователиНастройки SSO и скопировать Идентификатор (Entity ID):

Entity ID


Заполнить параметры приложения в Blitz:

  • Идентификатор (entityID или client_id) — https://passwork.example.com/api/v1/sso/metadata
  • Название — Пассворк
  • Домен — passwork.example.com

Открыть созданное приложение (Пассворк) и перейти в раздел ПротоколыSAMLСконфигурировать:

Document image


В МетаданныеИзменитьСгенерировать метаданные. В Пассворке скопировать:

  • URL ответа (URL службы обработчика утверждений) — https://passwork.example.com/api/v1/sso/acs
  • URL выхода — https://passwork.example.com/api/v1/sso/sls

На сервере, где установлен Blitz Identity Provider, автоматически генерируются публичный и приватный SSL-сертификаты для использования, которые размещены в — /etc/blitz-config/saml/credentials/:

shell


Получить и скопировать содержимое idp.crt SSL сертификата:

shell


Заполнить параметры для формирования метаданных:

  • URL сервиса обработчика утверждений (AssertionConsumerService) — https://passwork.example.com/api/v1/sso/acs
  • URL сервиса единого логаута (SingleLogoutService) — https://passwork.example.com/api/v1/sso/sls
  • В Сертификат подписи и Сертификат шифрования поместить скопированный idp.crt SSL сертификат.
Document image


Сгенерировать метаданные для Пассворка:

Document image


В разделе SAML профильСконфигурировать и выставить в never следующие параметры:

  • Шифровать утверждения;
  • Шифровать идентификаторы (NameIds).

Активировать — Включить передачу SAML-утверждений о пользователе в специальном блоке Attribute Statement:

Document image


Сохранить указанные значения и в левой панели перейти на вкладку — SAML.

Настройка правил обработки запросов от SP (Пассворка) в IDP (Blitz Identity Provider)

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

Пожалуйста, выберите необходимый формат логина пользователя в Пассворке и выполните настройку.

На вкладке SAMLДобавить новый SAML-атрибут и в Свойствах SAML-атрибута заполнить:

  • Название — NameID;
  • Источник — email.

Добавить кодировщик и выполнить следующие действия:

  • Тип — SAML2StringNameID;
  • Название — NameID;
  • Формат имени — urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress.

Сохранить внесённые изменения для NameID атрибута:

Document image


На вкладке SAMLДобавить новый SAML-атрибут и в Свойствах SAML-атрибута заполнить:

  • Название — NameID;
  • Источник — sub.

Добавить кодировщик и выполнить следующие действия:

  • Тип — SAML2StringNameID;
  • Название — NameID;
  • Формат имени — urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress.

Сохранить внесённые изменения для NameID атрибута:

Document image


Настройка правил обработки дополнительных атрибутов для передачи в SP

Добавить новый SAML-атрибут и в Свойствах SAML-атрибута заполнить:

  • Название — emailAddress;
  • Источник — email.

Добавить кодировщик и выполнить следующие действия:

  • Тип — SAML2String;
  • Название — emailAddress;
  • Короткое имя — emailAddress;
  • Формат имени — urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified.

Сохранить внесённые изменения для emailAddress атрибута:

Document image


Добавить новый SAML-атрибут и в Свойствах SAML-атрибута заполнить:

  • Название — displayName;
  • Источник — given_name.

Добавить кодировщик и выполнить следующие действия:

  • Тип — SAML2String;
  • Название — displayName;
  • Короткое имя — displayName;
  • Формат имени — urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified.

Сохранить внесённые изменения для displayName атрибута:

Document image


Открыть ПриложенияПассворк (созданное приложение) → в разделе Атрибуты пользователя Добавить:

  • NameID;
  • emailAddress;
  • displayName.

Сохранить изменения:

Document image


Настройка и заполнение параметров единого входа (SSO) в Пассворке

Заполнение значений «Атрибуты пользователя»

Авторизоваться в веб-интерфейсе Пассворка, перейти в — Настройки и пользователиНастройки SSO и заполнить атрибуты сопоставления:

  • Атрибут электронной почты — emailAddress;
  • Атрибут полного имени — displayName.

Заполнение значений «Поставщик удостоверений → Пассворк»

Открыть конфигурацию поставщика услуг (IDP) — SAMLURL с метаданными Blitz Identity Provider:

Document image


Скопировать следующие значения параметров:

xml

Document image


Открыть — Настройки и пользователиНастройки SSO и заполнить значения:

  • Идентификатор (Entity ID) — https://blitz.passwork.local/blitz/saml
  • Url-адрес входа — https://blitz.passwork.local/blitz/saml/profile/SAML2/Redirect/SSO
  • Url-адрес выхода — https://blitz.passwork.local/blitz/saml/profile/SAML2/Redirect/SLO

Заполнение значения «Сертификат»

Повторно скопировать содержимое idp.crt SSL сертификата:

shell


Скопированный SSL сертификат поместить в соответствующее поле — Настройки и пользователиНастройки SSO.

Открыть окно авторизации в веб-интерфейсе Пассворка и выполнить вход через SSO для проверки корректной настройки:

Document image