11 Настройка SAML с Okta

В этом разделе описывается, как настроить Okta для включения аутентификации SAML 2.0 для Zabbix.

Настройка Okta

1. Перейдите на https://okta.com и зарегистрируйтесь или войдите в свою учетную запись.

2. В веб-интерфейсе Okta перейдите в Приложения → Приложения. и нажмите кнопку «Добавить приложение» ().

3. Нажмите кнопку «Создать новое приложение». (). Во всплывающем окне выберите Платформа: Веб, Метод входа: SAML 2.0 и нажмите кнопку «Создать».

4. Заполните поля на вкладке Общие настройки (первая открывшаяся вкладка) в соответствии с вашими предпочтениями и нажмите «Далее».

5. На вкладке Настроить SAML введите значения, указанные ниже, затем Нажмите «Далее».

  • В разделе ОБЩИЕ:
    • URL-адрес для единого входа: https://<url-вашего-zabbix>/ui/index_sso.php?acs
      Флажок Использовать для URL-адреса получателя и URL-адреса назначения должен быть отмечен
    • Код URI аудитории (идентификатор сущности SP): zabbix
      Обратите внимание, что это значение будет использоваться в утверждении SAML как уникальный идентификатор поставщика услуг (если он не совпадает, операция будет отклонена). В этом поле можно указать URL-адрес или любую строку данных.
    • RelayState по умолчанию:
      Оставьте это поле пустым; если требуется пользовательское перенаправление, оно может быть добавлено в Zabbix в настройках Администрирование → Пользователи.
    • Заполните остальные поля в соответствии с вашими предпочтениями.

Если вы планируете использовать зашифрованное соединение, создайте закрытый и открытый сертификаты шифрования, затем загрузите открытый сертификат в Okta. Форма загрузки сертификата появляется, когда Шифрование утверждений установлено в «Зашифровано» (нажмите Показать дополнительные настройки, чтобы найти этот параметр).

  • В разделе ATTRIBUTE STATEMENTS (OPTIONAL) добавьте авыражение с параметрами:
    • Имя: usrEmail
    • Формат имени: Не указано
    • Значение: user.email

6. На следующей вкладке выберите «Я поставщик программного обеспечения. Я хотел бы интегрировать моё приложение с Okta» и нажмите «Готово».

7. Теперь перейдите на вкладку Пользователи и нажмите кнопку «Назначить», затем выберите Назначить людям из раскрывающегося списка.

8. В появившемся всплывающем окне назначьте созданное приложение людям, которые будут использовать SAML 2.0 для аутентификации в Zabbix, затем нажмите «Сохранить и вернуться».

9. Перейдите на вкладку Единый вход и нажмите кнопку «Просмотр инструкций по настройке». Инструкция по настройке отобразится в новой вкладке; держите эту вкладку открытой при настройке Zabbix.

Настойка Zabbix

1. В Zabbix, перейдите в настройки SAML в разделе Администрирование → Аутентификация и скопируйте информацию из инструкций по настройке Okta в соответствующие поля:

  • Identity Provider Single Sign-On URL → URL единого входа
  • Identity Provider Issuer → IdP entity ID
  • Атрибут имени пользователя → Attribute name (usrEmail)
  • ID объекта SP → Audience URI

2. Загрузите сертификат, указанный на странице инструкций по настройке Okta, в папку ui/conf/certs как idp.crt и установите права доступа 644, выполнив:

chmod 644 idp.crt

Обратите внимание, что если вы обновились до Zabbix 5.0 из более старой версии, вам также необходимо вручную добавить эти строки в файл zabbix.conf.php (расположенный в каталоге ui/conf/):

// Used for SAML authentication.
       $SSO['SP_KEY'] = 'conf/certs/sp.key'; // Path to your private key.
       $SSO['SP_CERT'] = 'conf/certs/sp.crt'; // Path to your public key.
       $SSO['IDP_CERT'] = 'conf/certs/idp.crt'; // Path to IdP public key.
       $SSO['SETTINGS'] = []; // Additional settings

См. общие инструкции Аутентификация SAML для получения дополнительных сведений.

3. Если Шифрование утверждений было выставлено в «Шифрование» в Okta, флажок «Декларации» параметра Шифрование также должен быть отмечен в Zabbix.

4. Нажмите кнопку «Обновить», чтобы сохранить эти настройки.

Для входа с помощью SAML имя пользователя в Zabbix должно соответствовать его электронной почте Okta. Эти настройки можно изменить в разделе Администрирование → Пользователи веб-интерфейса Zabbix.