Создать SAML-приложение в Yandex Identity Hub для интеграции с Zabbix
Примечание
Функциональность находится на стадии Preview.
Zabbix
Чтобы пользователи вашей организации могли аутентифицироваться в Zabbix с помощью технологии единого входа по стандарту SAML
Управлять SAML-приложениями может пользователь, которому назначена роль organization-manager.samlApplications.admin или выше.
Чтобы дать доступ пользователям вашей организации в Zabbix:
Создайте приложение
- Войдите в сервис Yandex Identity Hub
. - На панели слева выберите
Приложения. - В правом верхнем углу страницы нажмите
Создать приложение и в открывшемся окне:-
Выберите метод единого входа SAML (Security Assertion Markup Language).
-
В поле Имя задайте имя создаваемого приложения:
zabbix-app. -
(Опционально) В поле Описание задайте описание приложения.
-
(Опционально) Добавьте метки:
- Нажмите Добавить метку.
- Введите метку в формате
ключ: значение. - Нажмите Enter.
-
Нажмите Создать приложение.
-
Настройте интеграцию
Чтобы настроить интеграцию Zabbix с созданным SAML-приложением в Identity Hub, выполните настройки на стороне Zabbix и на стороне Identity Hub.
Настройте SAML-приложение на стороне Zabbix
Примечание
Настройку SAML-приложения в Zabbix может проводить пользователь с ролью Super admin role.
Настройте аутентификацию по стандарту SAML на стороне Zabbix
-
Чтобы настроить аутентификацию по стандарту SAML на стороне Zabbix, в левой панели выберите раздел Users и в нем подраздел Authentication.
-
В основном окне перейдите на вкладку SAML Settings. После открытия формы выполните указанные ниже шаги:
-
Активируйте опцию Enable SAML authentication.
-
Активируйте опцию Enable JIT provisioning.
Примечание
Опция Enable JIT provisioning отвечает за автоматическое создание пользователей на стороне Zabbix при аутентификации через SSO. Если опция неактивна, пройти аутентификацию смогут только пользователи, уже созданные на стороне Zabbix.
-
Настройте связь между Zabbix и Identity Hub:
-
Войдите в сервис Yandex Identity Hub
. -
На панели слева выберите
Приложения и выберите нужное SAML-приложение. -
На вкладке Обзор в блоке Конфигурация поставщика удостоверений (IdP) скопируйте значения полей: Issuer / IdP EntityID, Login URL и Logout URL.
-
Вернитесь в Zabbix и вставьте скопированные адреса в поля: IdP entity ID, SSO service URL и SLO service URL.
Примечание
Если не указать адрес для SLO service URL, то после выхода из Zabbix пользователь будет перенаправлен не на форму аутентификации Identity Hub, а на форму Zabbix.
-
-
В поле Username attribute укажите
login.Примечание
Атрибут, используемый в качестве имени пользователя при аутентификации в Zabbix. Название атрибута может быть произвольным, но обязательно должно совпадать с названием атрибута пользователя, содержащего значение
SubjectClaims.preferred_usernameв вашем приложении Identity Hub. -
В поле SP entity ID укажите
zabbix.Важно
Значение SP entity ID должно полностью совпадать как в Zabbix, так и в вашем приложении Identity Hub.
-
В блоках Sign и Encrypt оставьте все опции неактивированными.
Совет
На текущий момент Yandex Identity Hub не поддерживает проверку подписей запросов, поэтому рекомендуется оставить опции блоков Sign и Encrypt неактивированными.
-
Активируйте опцию Case-sensitive login, если требуется учет регистра символов в логине.
-
Если опция Enable JIT provisioning была включена, настройте параметры автоматического создания пользователей в Zabbix. Для этого активируйте опцию Configure JIT provisioning и выполните следующие шаги:
-
В поле Group name attribute укажите
groups— этот атрибут определяет группу пользователей в вашем приложении Identity Hub, обеспечивающую доступ к Zabbix. -
В поле User name attribute укажите
givenname. -
В поле User last name attribute укажите
surname. -
В блоке User group mapping сопоставьте группу пользователей вашего приложения Identity Hub с соответствующей группой и ролью в Zabbix. Это позволит новым пользователям автоматически получать назначенную группу и роль в Zabbix. Для этого нажмите Add и выполните следующие шаги:
-
В поле SAML group pattern задайте шаблон для поиска названий групп SAML-приложения.
Примечание
Поле SAML group pattern поддерживает подстановочные знаки с символом
*. -
В поле User groups укажите группы Zabbix, в которые будут автоматически добавляться новые пользователи при первой аутентификации.
-
В поле User role укажите роль Zabbix, которая будет присваиваться пользователям при первом входе в систему.
-
-
При необходимости в блоке Media type mapping настройте сопоставление атрибутов пользователя вашего SAML-приложения для получения уведомлений от Zabbix (опционально).
-
Опцию Enable SCIM provisioning оставьте неактивированной.
Совет
На текущий момент Yandex Identity Hub не поддерживает протокол SCIM для автоматического управления пользователями в других приложениях, поэтому рекомендуется оставить опцию Enable SCIM provisioning неактивированной.
-
-
-
В основном окне перейдите на вкладку Authentication. После открытия формы в поле Deprovisioned users group выберите группу
Disabled.Важно
Если включена опция Enable JIT provisioning, на вкладке Authentication обязательно должна быть указана группа Deprovisioned users group. В эту группу будут перемещаться деактивированные пользователи.
-
Сохраните настройки, нажав кнопку Update.
Перенесите сертификат SAML-приложения и настройте Zabbix
Чтобы перенести сертификат SAML-приложения и настроить Zabbix, выполните следующие шаги:
-
Скачайте сертификат провайдера идентификации (IdP):
- Войдите в сервис Yandex Identity Hub
. - На панели слева выберите
Приложения и выберите нужное SAML-приложение. - На вкладке Обзор в блоке Сертификат приложения нажмите на кнопку Скачать сертификат и сохраните файл на своем устройстве.
- Войдите в сервис Yandex Identity Hub
-
Скопируйте полученный файл сертификата в каталог
/usr/share/zabbix/ui/conf/certsна сервере Zabbix. -
Настройте права доступа.
chmod 644 /usr/share/zabbix/ui/conf/certs/<your_cert>.crt -
Откройте конфигурационный файл Zabbix
/usr/share/zabbix/ui/conf/zabbix.conf.phpи укажите путь к сертификату IdP.$SSO['IDP_CERT'] = 'conf/certs/<your_cert>.crt';
Настройте SAML-приложение на стороне Yandex Identity Hub
Настройте эндпоинты поставщика услуг
- Войдите в сервис Yandex Identity Hub
. - На панели слева выберите
Приложения и выберите нужное SAML-приложение. - Справа сверху нажмите
Редактировать и в открывшемся окне:- В поле SP EntityID укажите
zabbix. - В поле ACS URL укажите адрес
https://<your-domain>/zabbix/index_sso.php?acs. - Нажмите Сохранить.
- В поле SP EntityID укажите
Настройте атрибуты пользователей
Важно
Для интеграции с Zabbix необходимо, чтобы у пользователей был атрибут login.
Если у пользователей нет атрибута login, добавьте его:
-
Войдите в сервис Yandex Identity Hub
. -
На панели слева выберите
Приложения и выберите нужное приложение. -
Перейдите на вкладку Атрибуты.
-
В правом верхнем углу страницы нажмите
Добавить атрибут и в открывшемся окне:- В поле Имя атрибута введите
login. - В поле Значение выберите
SubjectClaims.preferred_username. - Нажмите Добавить.
- В поле Имя атрибута введите
Если вы настроили автоматическую регистрацию пользователей на стороне Zabbix, добавьте атрибут группы пользователей. Для этого:
- В правом верхнем углу страницы нажмите
Добавить атрибут группы и в открывшемся окне: - В поле Имя атрибута укажите
groups. - В поле Передаваемые группы выберите
Только назначенные группы. - Нажмите Добавить.
Подробнее о настройке атрибутов см. Настройте атрибуты пользователей и групп.
Добавьте пользователей
Чтобы пользователи вашей организации могли аутентифицироваться в Zabbix с помощью SAML-приложения Identity Hub, необходимо явно добавить в ваше SAML-приложение нужных пользователей и/или группы пользователей.
Примечание
Управлять пользователями и группами, добавленными в SAML-приложение, может пользователь, которому назначена роль organization-manager.samlApplications.userAdmin или выше.
-
Если вы настроили автоматическую регистрацию пользователей на стороне Zabbix, создайте необходимую группу:
Интерфейс Cloud Center- Войдите в сервис Yandex Identity Hub
. - На панели слева выберите
Группы. - В правом верхнем углу страницы нажмите
Создать группу. - Задайте название
zabbix-users. - Нажмите Создать группу.
- Добавьте пользователей в группу:
- Перейдите на вкладку Участники.
- Нажмите Добавить участника.
- В открывшемся окне выберите нужных пользователей.
- Нажмите Сохранить.
- Войдите в сервис Yandex Identity Hub
-
Добавьте пользователей в приложение:
Интерфейс Cloud Center- Войдите в сервис Yandex Identity Hub
. - На панели слева выберите
Приложения и выберите нужное приложение. - Перейдите на вкладку Пользователи и группы.
- Нажмите
Добавить пользователей. - В открывшемся окне выберите нужного пользователя или группу пользователей.
- Нажмите Добавить.
- Войдите в сервис Yandex Identity Hub
Убедитесь в корректной работе приложения
Чтобы убедиться в корректной работе SAML-приложения и интеграции с Zabbix, выполните аутентификацию в Zabbix от имени одного из добавленных в приложение пользователей. Для этого:
- В браузере перейдите по адресу вашего экземпляра Zabbix (например,
https://<your-domain>/zabbix/). - Если вы были авторизованы в Zabbix, выйдите из профиля.
- На странице аутентификации Zabbix нажмите Sign in with Single Sign-On (SAML).
- На странице аутентификации Yandex Cloud укажите адрес электронной почты и пароль пользователя. Пользователь должен быть добавлен в приложение или состоять в группе, добавленной в приложение.
- Убедитесь, что вы авторизовались в Zabbix.