我们目前正在设置 Icinga2 和 Icingaweb2 作为我们的全局监控。为了验证用户身份,我们使用 Apache 模块(单点登录),该模块只允许允许的用户访问 Web UI。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)"
可以将一个用户添加到多个这样的配置块中。