Общие сведения
Avanpost Identity Cloud реализует функциональность SAML Identity Provider и предоставляет возможность управления приложениями, использующими набор HTTP-методов в соответствии с протоколом SAML 2.0.
В Avanpost FAM реализована функциональность SAML‑сервера, работающий в роли IdP (Identity Provider). Таким образом, FAN позволяет подключать корпоративные системы и облачные сервисы, поддерживающие SAML 2.0, для организации единого входа (SSO), централизованного выхода (SLO) и многофакторной аутентификации (MFA). Администратор настраивает параметры приложения в соответствии с текущей инструкцией, а также управляет передачей атрибутов пользователя (включая вычисляемые значения). Продукт поддерживается подпись сообщений и утверждений, выбор алгоритма подписи и метода каноникализации, что обеспечивает совместимость с широким спектром целевых систем от внутренних веб‑порталов до внешних SaaS‑платформ.
Предположим, CRM‑система Creatio интегрируется с Avanpost FAM по протоколу SAML для обеспечения двухфакторного входа и SSO. Администратор создаёт в Avanpost FAM SAML‑приложение, настраивает параметры, полученные из XML‑файла SAMLConfiguration на стороне Creatio, а в качестве сертификата подписи загружает файл cert.pem из инфраструктуры FAM. На стороне Creatio, в свою очередь, устанавливаются адреса FAM и выполняются сопутствующие настройки. По результатам настройки каждый сотрудник при обращении к Creatio перенаправляется на страницу аутентификации FAM и после успешного прохождения предварительно настроенного сценария аутентификации автоматически возвращается в целевую систему. При выходе из Creatio FAM инициирует SLO, завершая сессию также и в других SAML‑приложениях, что обеспечивает централизованное управление доступом и соответствие требованиям информационной безопасности.
Добавление SAML-приложения
Первичная настройка SAML-приложения осуществляется при добавлении нового приложения. Для этого требуется нажать кнопку "Добавить приложение" в режиме "Приложения" и выполнить настройку в открывшемся интерфейсе. Процесс настройки содержит в себе два шага:
- Основные настройки.
- Настройки интеграции.
Шаг 1. Основные настройки
На данном шаге продукт предлагает задать значения следующих параметров.
| Название параметра | Описание параметра |
|---|---|
| Наименование | Название приложения |
| Тип | Типы механизма интеграции приложения:
Для настройки SAML-приложения выбрать опцию " |
| Процесс аутентификации | Выбрать из выпадающего списка один из настроенных процессов аутентификации |
| Показывать приложение пользователям | Чекбокс "Показывать приложение пользователям":
|
| Сделать активным | Чекбокс "Сделать приложение активным":
|
Для перехода к следующему шагу требуется нажать "Вперед" после установки параметров. Для отказа от создания приложения следует нажать "Отмена".
Шаг 2. Настройки интеграции
На данном шаге продукт предлагает ввести следующие параметры.
| Название параметра | Описание параметра | Обязательность |
|---|---|---|
| Идентификатор поставщика (Issuer) | Уникальный идентификатор приложения (Issuer в соответствии со спецификацией SAML 2.0). Превентивное устранение ошибок При переходе к следующему шагу предусмотрено автоматическое удаление первого и последнего пробелов (если таковые были случайно введены/вставлены) из значения параметра. | Да |
| URL приёма ответа (ACS URL) | Assertion Consumer Service (Assertion Consumert Service URL в соответствии со спецификацией SAML Core 2.0) – адрес сервиса на стороне приложения, на который должен быть отправлен ответ. Превентивное устранение ошибок При переходе к следующему шагу предусмотрено автоматическое удаление первого и последнего пробелов (если таковые были случайно введены/вставлены) из значения параметра. | Да |
| Адрес, на который пользователь будет перенаправляться при переходе из личного кабинета. | Нет | |
| URL выхода | Адрес сервиса на стороне приложения, отвечающего за прекращение сессий в запросе формата SAML LogoutRequest. | Нет |
| Формат NameID | Формат передачи формата идентификатора имени (
| Да |
| Источник значения NameID | Передаваемое значение в идентификатор имени (
| Да |
| NameID выражение | Настраиваемый формат NameID для случаев, когда требуется использование нестандартного формата. Значение вводится в текстовое поле в формате и содержит наименование атрибута/атрибутов и/или суффикс (например, user.Extra.sAMAccountName + '@avanpost.com'). Параметр доступен при выборе "Значение NameID" типа "Вычисляемое значение". | Нет |
Для завершения создания приложения требуется нажать "Создать" после установки параметров, для отказа от создания приложения - "Отменить", для возврата к предыдущему шагу - "Назад".
Настройка приложения Discovery-методом
Допускается произведения настройки приложения Discovery-методом при загрузке файла по адресу https://${baseUrl}/.well-known/samlidp.xml, где ${baseURL} - базовый адрес сервера Системы. Для настройки данным способом следует получить файл SAML IdP Metadata XML следующего вида:
<?xml version="1.0" encoding="UTF-8"?> <md:EntityDescriptor validUntil="2024-08-13T07:37:40.675Z" entityID="https://test.my.company.com" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata"> <md:IDPSSODescriptor protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol" WantAuthnRequestsSigned="false"> <md:KeyDescriptor use="signing"> <ds:KeyInfo> <ds:X509Data> <ds:X509Certificate>encoded_certificate</ds:X509Certificate> </ds:X509Data> </ds:KeyInfo> </md:KeyDescriptor> <md:NameIDFormat>urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified</md:NameIDFormat> <md:SingleLogoutService Location="https://test.my.company.com/adfs/ls/IDPLogout" Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect"/> <md:SingleSignOnService Location="https://test.my.company.com/idp/endpoint/HttpRedirect" Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect"/> </md:IDPSSODescriptor> </md:EntityDescriptor>
После этого приложение автоматически настраивает параметры интеграции.
Настройка SAML-приложения
Настройка созданного SAML-приложения доступна доступна в его профиле (графическое обозначение в реестре приложений). В профиле осуществляется управление параметрами, общими для всех приложений (описаны в разделе Управление приложениями). Также в профиле осуществляется управление специфическими параметрами SAML-приложений во вкладках "Настройки" и "Attributes".
Вкладка "Настройки"
Вкладка позволяет осуществлять редактировать настраиваемые атрибуты SAML-приложений и содержит следующие разделы:
- Настройки интеграции;
- Настройки безопасности;
- Настройки регистрации.
Для внесения изменений в параметры того или иного раздела необходимо нажать в соответствующем разделе. Для сохранения изменений следует нажать "Сохранить" в соответствующем разделе, для отмены изменений - "Отмена".
Вкладка "Настройки" позволяет просматривать и управлять следующими настраиваемыми атрибутами.
| Название параметра | Описание параметра |
|---|---|
| Настройки интеграции | |
| Issuer | Уникальный идентификатор приложения (Issuer в соответствии со спецификацией SAML 2.0) |
| ACS | Адрес сервиса на стороне приложения, на который должен быть отправлен ответ |
| Base URL | Адрес, на который пользователь будет перенаправляться при переходе из личного кабинета. |
| Backchannel-logout URL | Адрес сервиса на стороне приложения, отвечающего за прекращение сессий в запросе формата SAML LogoutRequest. |
| Подпись | Политика в отношении подписей. Выбрать один из вариантов в выпадающем списке:
|
| NameID Format | Формат передачи формата идентификатора имени (
|
| Значение NameID | Передаваемое значение в идентификатор имени (NameID в SAMLResponse) в соответствии с требованиями целевого приложения. Выбирается из выпадающего списка, содержащего основные и дополнительные атрибуты. |
| Signing algorithm | Алгоритм шифрования, используемый для подписи сообщений/Assertion:
|
| Canonicalization method | Cпособ приведения подписанного xml к общему виду. Требуется выбрать из выпадающего списка в зависимости от методов, поддерживаемых приложением:
|
| Prefix | Префиксы, которые будут использоваться XML вне зависимости от |
| Add XML header | Чекбокс "Add XML header":
|
| Post logout redirect URL | URL-адрес, на который пользователь будет перенаправлен после централизованного завершения сессии. |
| Send Logout response enabled | Чекбокс "Send Logout response enabled":
|
| Настройки безопасности | |
| Настройка сессии | Чекбокс "Ограничивать количество активных сессий":
|
| Повысить уровень безопасности и отключить SSO для приложения | Чекбокс "Отключить":
|
| Настройки регистрации | |
| Статус | Управление функцией самостоятельной регистрации пользователя применительно к приложению. Информация о всех возможностях управления саморегистрацией доступна в разделе Самостоятельная регистрация пользователей. Выбрать из выпадающего списка:
|
| URL перенаправления после регистрации | URL-адрес, на который пользователь будет перенаправлен после регистрации. Текстовое поле доступно для заполнения при значении параметра Статус " |
Unified SSO | |
| Включить USSO | Чекбокс "Включить USSO":
|
| Режим для устаревших браузеров | Переключатель "Режим для устаревших браузеров":
|
Вкладка "Attributes"
Вкладка позволяет управлять атрибутами, используемыми SAML-приложением. Данная вкладка нужна для сопоставления и синхронизации атрибутов пользователя, существующих в Avanpost Identity Cloud, и атрибутов пользователя, необходимых для работы внешнего SAML-приложения. Вкладка содержит реестр атрибутов со следующей информацией и возможностями:
- Наименование - Название атрибута;
- Тип - Тип атрибута;
- Кнопка "Изменить" - Изменить параметры выбранного атрибута;
- Кнопка "Удалить" - Удалить выбранный атрибут.
Для добавления нового атрибута требуется нажать . В открывшейся форме необходимо ввести следующие данные.
| Название параметра | Описание параметра |
|---|---|
| Наименование | Ввести наименование атрибута, поддерживаемое целевым приложением. |
| Тип атрибута | Выбор типа атрибута из выпадающего списка:
Сценарий использования Администратор хочет задать вычисляемый атрибут, показывающий является ли пользователь налоговым резидентом РФ (
пользователь считается налоговым резидентом, при невыполнении любого из условий - не считается. Вычисление будет выглядеть следующим образом: |
| Значение | Значение, присваиваемое атрибуту для передачи в целевое приложение:
|
Для сохранения нового атрибута следует нажать "Сохранить", для отмены действия - "Отмена".
Приложение А. Endpoint'ы SAML 2.0
Доступные IdP endpoint'ы протокола SAML 2.0, предоставляемые Avanpost Identity Cloud:
| Параметр | Описание | Значение |
|---|---|---|
| SAML 2.0 Discovery | Указывает расположение XML-документа с параметрами | Адрес /.well-known/samlidp.xml |
Адрес сервера аутентификации (SingleSignOnService в SAML 2.0) | Указывается адрес сервера аутентификации Системы SingleSignOnService | Адрес |
Адрес завершения сессии (SingleLogoutService в SAML 2.0) | Указать адрес сервера аутентификации Системы SingleLogoutService | Адрес /saml2/logout на сервере Системы в виде https://${baseUrl}/saml2/logout, где ${baseURL} - базовый адрес сервера Системы. |