Пользовательские разрешения с icingaweb2 (с SSO-аутентификацией)
В настоящее время мы настраиваем Icinga2 и Icingaweb2 в качестве глобального мониторинга. Для аутентификации пользователей мы используем модуль Apache (Single Sign On), который разрешает доступ к веб-интерфейсу только пользователям.
Icingaweb2 настроен с /etc/icingaweb2/authentication.ini
:
[icingaweb2]
strip_username_regexp = ""
backend = "external"
Только один пользователь объявлен глобальным администратором в /etc/icingaweb2/roles.ini
:
[admins]
users = "bancal"
permissions = "*"
Для каждого сервера, контролируемого с помощью Icinga, определена группа пользователей, которая определяет, кто будет получать оповещения по электронной почте. Эти люди являются клиентами-пользователями.
То, что мы хотели бы установить:
- Каждый глобальный администратор имеет права администратора на всех хостах (это уже так)
- Каждый клиент-пользователь имеет представление администратора на узлах, членом которых он является, и отсутствие просмотра на других узлах, которые отслеживаются.
Есть ли способ достичь этого?
1 ответ
Мы наконец сделали это с довольно простым конфигом. Поскольку хосты сгруппированы в группы хостов, пользователям предоставляется доступ к этим группам хостов со следующей конфигурацией в /etc/icingaweb2/roles.ini
:
[group1]
users = "user1,user2"
permissions = "monitoring/command/*,module/*"
monitoring/filter/objects = "(hostgroup_name=hosts-group1-test|hostgroup_name=hosts-group1-prod)"
Один пользователь может быть добавлен к нескольким из этих блоков конфигурации.