Открыть меню
Открыть персональное меню
Вы не представились системе
Your IP address will be publicly visible if you make any edits.

Управление пользователями и группами с помощью SAML в АппОптима

Материал из Документация АппОптима

АппОптима поддерживает интеграцию с 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

  1. Используйте файл метаданных sp.xml , который вы скачали ранее, для настройки АппОптима как поставщика услуг (SP).
  2. Загрузите готовый метафайл конфигурации со своего 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.

Как получить токен:

  1. Выберите Настройки> Токены API.
  2. Выберите Создать токен.
  3. Дайте токену имя, включите API поставщика услуг и сохраните его.
  4. В списке токенов разверните только что созданный токен и выберите Копировать, чтобы скопировать значение токена в буфер обмена.

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.

    Пример мастера добавления проверяющей стороны доверия

    ADFS пример 1

    2. На вкладке «Дополнительно» установите для алгоритма безопасного хеширования значение SHA-1 или SHA-256.

    Пример расширенной вкладки

    ADFS пример 2

    3. Добавьте политику выдачи утверждений к добавленному доверию проверяющей стороны.

    Изменить пример политики выдачи претензий

    ADFS пример 3

    4. Определите правило для отправки атрибутов LDAP в виде утверждений.

    Пример правила: отправлять атрибуты LDAP как утверждения

    ADFS пример 4

    5. Определите правила для преобразования атрибутов LDAP в идентификатор имени (создайте правило, соответствующее вашим потребностям).

    • Пример правила для преобразования атрибута входа LDAP в ID имени.
      • Пример правила: атрибут LDAP `login` для` Name ID`

    ADFS пример 5

    • Пример правила преобразования атрибута электронной почты LDAP в идентификатор имени.
      • Пример правила: атрибут LDAP `email` для `Name ID`

    ADFS пример 6

    Конфигурация на стороне АппОптима

    На странице настроек АппОптима Single Sign-on установите соответствующий атрибут группы пользователей.

    ADFS пример 7

    Часто задаваемые вопросы (FAQ)

    • Какой правильный NameIdFormat?

      NameId - это логин на стороне АппОптима. Все форматы принимаются АппОптима, поэтому вы можете выбрать формат, который лучше всего соответствует правилам вашей политики.

    Наша рекомендация для NameIdFormat:

    urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress

    • Почему я выхожу из своих служб, когда запрашиваю выход из АппОптима?

      После выхода запускается глобальный выход, в том числе для вашего IdP, который затем каскадно передается другим службам. В противном случае вы бы вышли из АппОптима, но для повторной аутентификации достаточно было бы либо щелкнуть ссылку «Вход с использованием единого входа» на странице входа, либо ввести URL-адрес управляемого веб-интерфейса АппОптима в браузере, когда страница входа настроена на SSO. Если вы хотите отключить его (не очень хорошая идея с точки зрения безопасности), отредактируйте свои метаданные, удалите все теги SingleLogoutService и загрузите обновленные метаданные.

    • Могут ли метаданные содержать несколько сертификатов подписи?

      Да, метаданные IdP клиента могут содержать несколько сертификатов подписи. АппОптима проверяет, что сообщения SAML от IdP клиента подписаны одним из них.

    • Добавляются ли пользователи SAML в АппОптима автоматически?

      Да, пользователи добавляются после успешной аутентификации.