АппОптима поддерживает интеграцию с SAML 2.0 в качестве поставщика удостоверений единого входа (SSO IdP) для управления пользователями и группами. SAML может использовать привязки HTTP POST
(предпочтительно) или HTTP Redirect
. Когда присутствуют оба, используется HTTP POST
.
Настроить интеграцию SAML 2.0
Для этой процедуры требуется настройка в АппОптима и у вашего IdP.
В АппОптима
1. В меню консоли управления кластером выберите Проверка подлинности пользователя> Параметры единого входа.
Пример `Настройки единого входа`
2. В разделе «Выбрать технологию единого входа» выберите SAML 2.0
.
3. На странице выбора входа выберите параметры входа, которые вы хотите предложить пользователям:
- Standard + SSO отображает стандартную страницу входа в АппОптима, где пользователь может выбрать для входа в систему с использованием локальной учетной записи (как настроено в разделе «Проверка подлинности пользователя»> «Учетные записи пользователей») или выбрать ссылку «Вход с помощью SSO» и использовать проверку подлинности SSO.
- SSO пропускает страницу входа в АппОптима, поэтому пользователь не может войти в систему, используя локальную учетную запись пользователя, и перенаправляется на страницу входа IdP только для аутентификации SSO.
4. Выберите «Загрузить метаданные SP», чтобы загрузить (в файл sp.xml
) метаданные SAML, которые необходимо предоставить своему SP.
Метаданные XML в поле поставщика услуг SAML 2.0 отображают метаданные.
На вашем сервере поставщика удостоверений (IdP)
Подробную информацию об этих шагах см. в документации вашего IdP.
На вашем сервере IdP
- Используйте файл метаданных
sp.xml
, который вы скачали ранее, для настройки АппОптима как поставщика услуг (SP). - Загрузите готовый метафайл конфигурации со своего IdP-сервера.
В АппОптима
Вернуться в консоль управления управляемым кластером АппОптима
1. Вернитесь на страницу настроек единого входа (Аутентификация пользователя> Настройки единого входа), чтобы продолжить с того места, где вы остановились.
2. Нажмите кнопку «Выбрать файл» и загрузите метафайл конфигурации IdP в АппОптима.
Метаданные XML в поле поставщика удостоверений SAML 2.0 отображают метаданные.
3. В разделе «Атрибуты пользователя на основе атрибутов ответа SAML 2.0» введите атрибуты пользователя.
- Атрибут имени
- Атрибут фамилии
- Атрибут электронной почты
Конфигурация группового назначения
Каждый управляемый пользователь АппОптима должен быть отнесен как минимум к одной группе пользователей с как минимум одной связанной средой мониторинга. Без такого сопоставления пользователь не может войти в АппОптима и вместо этого получит сообщение об ошибке о том, что среда не найдена.
Переключатель «Назначить пользователей в группы на основе атрибута ответа SAML 2.0» определяет способ управления назначениями групп пользователей:
- Вручную: установите переключатель в положение «Выкл.», Если вы хотите назначать группы пользователей вручную из АппОптима. В этом случае АппОптима игнорирует список групп, отправленный в ответе на аутентификацию вашего IdP.
- Автоматически: включите переключатель и введите имя группы в поле Атрибут группы пользователей, если вы хотите обрабатывать назначение групп пользователей автоматически. В этом случае любые назначения, сделанные в АппОптима, перезаписываются списком групп, отправленным в ответе на аутентификацию вашего IdP, например
<Attribute Name="gr">
<AttributeValue>Admins</AttributeValue>
<AttributeValue>Users</AttributeValue>
</Attribute>
который назначит пользователя в группы Admins
и Users
.
- Если значение атрибута группы пользователей в ответе SAML содержит запятые, АппОптима распознает его как список групп пользователей, разделенных запятыми, и назначает пользователя каждой группе в списке. Например
<Attribute Name="gr">
<AttributeValue>Admins,Users</AttributeValue>
</Attribute>
назначит пользователя в группы «
Admins
» и «Users
».
- Убедитесь, что имена групп точно соответствуют существующим именам групп пользователей АппОптима (с учетом регистра, без лишних пробелов). Например,
Admins
иadmins
будут двумя разными группами.
Обновление сертификата подписи SAML
Чтобы отправить новый сертификат подписи SAML, сделайте запрос PUT через Cluster Management API.
1. В консоли управления кластером получите токен ServiceProviderAPI.
Как получить токен:
- Выберите Настройки> Токены API.
- Выберите Создать токен.
- Дайте токену имя, включите API поставщика услуг и сохраните его.
- В списке токенов разверните только что созданный токен и выберите Копировать, чтобы скопировать значение токена в буфер обмена.
2. Откройте меню «Пользователь» в правом верхнем углу окна и выберите Cluster Management API. 3. Отправьте токен.
Как отправить токен:
Выберите Авторизовать. Вставьте значение токена в поле редактирования. Выберите Авторизовать. Выберите "Закрыть". Теперь вы авторизованы для отправки необходимого запроса API.
4. Разверните раздел конфигурации SSO и выберите PUT.
5. Выберите Попробовать.
В разделе «Описание» отображается формат, ожидаемый для тела запроса PUT.
{
"privateKeyEncoded": "string",
"publicKeyCertificateEncoded": "string"
}
6. Вставьте содержимое закрытого ключа RSA и сертификата, чтобы заменить соответствующие заполнители значений privateKeyEncoded
и publicKeyCertificateEncoded
(string
). Обязательно включите полные теги BEGIN
и END
каждого из них. В этом примере ключ и сертификат усечены для краткости:
{
"privateKeyEncoded": "-----BEGIN RSA PRIVATE KEY-----\nMIIEowIBAAKCAQEAp8RXe0PIuDwj1ZbYrShXRxjiFnq8xmLWZlWIYkScX/1KC69M\n...\nPM3kel4na+AGibenqRs7PA6rqFeXDg193pepzWqvqmJ98W8YYecZ\n-----END RSA PRIVATE KEY-----",
"publicKeyCertificateEncoded": "-----BEGIN CERTIFICATE-----\nMIICzTCCAbWgAwIBAgIRAIpaHcbUOpvhKf6exsxJjVowDQYJKoZIhvcNAQELBQAw\n...\nuw==\n-----END CERTIFICATE-----"
}
7. Выберите «Выполнить», чтобы отправить запрос.
Коды ответов:
200
- обновление сертификата прошло успешно.400
- Неверный ввод. Убедитесь, что вы вставили полный ключ и сертификат, включая полные теги BEGIN и END каждого из них, в тело запроса, как показано в примере.510
- Неудачная операция. Подробности смотрите в журналах сервера.
Конфигурация ADFS
Если вы решили интегрировать АппОптима со службами федерации Active Directory (ADFS), выполните следующие действия на стороне ADFS, а затем в АппОптима.
Конфигурация на стороне ADFS
1. Используйте мастер добавления доверия проверяющей стороны, чтобы добавить новое доверие проверяющей стороны с помощью конфигурации метаданных АппОптима SP.
Пример мастера добавления проверяющей стороны доверия
2. На вкладке «Дополнительно» установите для алгоритма безопасного хеширования значение SHA-1 или SHA-256.
Пример расширенной вкладки
3. Добавьте политику выдачи утверждений к добавленному доверию проверяющей стороны.
Изменить пример политики выдачи претензий
4. Определите правило для отправки атрибутов LDAP в виде утверждений.
Пример правила: отправлять атрибуты LDAP как утверждения
5. Определите правила для преобразования атрибутов LDAP в идентификатор имени (создайте правило, соответствующее вашим потребностям).
- Пример правила для преобразования атрибута входа LDAP в ID имени.
- Пример правила: атрибут LDAP `login` для` Name ID`
- Пример правила преобразования атрибута электронной почты LDAP в идентификатор имени.
- Пример правила: атрибут LDAP `email` для `Name ID`
Конфигурация на стороне АппОптима
На странице настроек АппОптима Single Sign-on установите соответствующий атрибут группы пользователей.
Часто задаваемые вопросы (FAQ)
- Какой правильный NameIdFormat?
NameId
- это логин на стороне АппОптима. Все форматы принимаются АппОптима, поэтому вы можете выбрать формат, который лучше всего соответствует правилам вашей политики.
Наша рекомендация для NameIdFormat
:
urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress
- Почему я выхожу из своих служб, когда запрашиваю выход из АппОптима?
После выхода запускается глобальный выход, в том числе для вашего IdP, который затем каскадно передается другим службам. В противном случае вы бы вышли из АппОптима, но для повторной аутентификации достаточно было бы либо щелкнуть ссылку «Вход с использованием единого входа» на странице входа, либо ввести URL-адрес управляемого веб-интерфейса АппОптима в браузере, когда страница входа настроена на SSO. Если вы хотите отключить его (не очень хорошая идея с точки зрения безопасности), отредактируйте свои метаданные, удалите все теги
SingleLogoutService
и загрузите обновленные метаданные. - Могут ли метаданные содержать несколько сертификатов подписи?
Да, метаданные IdP клиента могут содержать несколько сертификатов подписи. АппОптима проверяет, что сообщения SAML от IdP клиента подписаны одним из них.
- Добавляются ли пользователи SAML в АппОптима автоматически?
Да, пользователи добавляются после успешной аутентификации.