配置Grafana启动LDAP认证
📅 2017-07-15 | 🖱️
🔖 grafana
使用Grafana作为团队监控系统的图表组件,为了安全还需配置使用团队基于OpenLDAP的统一用户认证。 Grafana从2.1开始支持LDAP集成,但是在参考官方文档Grafana LDAP Authentication进行配置时遇到了一些问题,这里做一个简单的记录,便于后边查看。
在grafana的主配置文件grafana.ini中开启LDAP认证:
1[auth.ldap]
2enabled = true
3config_file = /etc/grafana/ldap.toml
config_file
指定grafana的ldap配置文件ldap.toml的具体位置
ldap.toml配置文件的内容如下:
1[[servers]]
2host = "127.0.0.1"
3port = 389
4use_ssl = false
5start_tls = false
6ssl_skip_verify = false
7
8bind_dn = "cn=Manager,dc=frognew,dc=com"
9bind_password = 'thepassword'
10search_filter = "(cn=%s)"
11search_base_dns = ["ou=People,dc=frognew,dc=com"]
12group_search_base_dns = ["ou=Group,dc=frognew,dc=com"]
13group_search_filter = "(&(objectClass=posixGroup)(memberUid=%s))"
14
15[servers.attributes]
16name = "givenName"
17surname = "sn"
18username = "cn"
19member_of = "cn"
20email = "email"
21
22
23[[servers.group_mappings]]
24group_dn = "grafana-admin"
25org_role = "Admin"
26
27[[servers.group_mappings]]
28group_dn = "grafana-editor"
29org_role = "Editor"
30
31[[servers.group_mappings]]
32
33group_dn = "grafana-viewer"
34org_role = "Viewer"
host
和port
指定LDAP Server的地址和端口- 因为我们使用的OpenLDAP,是没有memberOf属性的POSIX schema,所以获取用户的Group信息时需要另外一个查询,通过
group_search_base_dns
和group_search_filter
,同事需要设置member_of = "cn"
- servers.group_mappings中指定LDAP中Group和Grafan中
org_role
的对应关系,注意这里需要和配置成LDAP中Group的cn,这里配置的是grafana-admin
、grafana-editor
、grafana-viewer
,这点和官方文档Grafana LDAP Authentication中给的例子是不一样的。