Keycloak配置
@ 登录Keycloak后台http://localhost:8080/auth/admin/master/console/#/realms/master
@ Add Realm,Name为"abc"
@ 创建Client,Name为"grafana",grafana默认端口是3000, 因此Root URL填写http://localhost:3000
@ 开启Authorization Enabled,保存。(该步骤非必须,建议开启,可以提供鉴权功能)
@ 打开Credentials,留存Secret,用于稍后配置grafana.ini。
@ 到Users模块创建用户
@ 到用户的Credentials页签设定密码,关闭Temporary选项。
安装(参考)
1 | wget https://s3-us-west-2.amazonaws.com/grafana-releases/release/grafana_5.0.3_amd64.deb |
@ 启动服务
sudo service grafana-server start
@ 访问http://localhost:3000即可看到登录界面
Grafana配置Oauth
@ 编辑/etc/grafana/grafana.ini配置文件
1 |
|
同时修改[database]
和[security]
节点内容。
@ 重启服务
sudo service grafana-server restart
@ 再次访问http://localhost:3000 ,登录界面能看到"Sign in with abc",点击即跳转到Keycloak登录界面,Realm为abc。使用bejond.shao登录,登录成功跳转回grafana,实现单点登录。同时grafana会创建同名用户,并存储基本信息,如邮箱。
存在的问题
@ Session无法同步
-
在keycloak登出用户的所有sessions,grafana并不知晓,session仍有效。
-
在grafana登出用户,再次登录,点击"Sign in with abc",没有登录界面,而是直接跳转回grafana。说明grafana登出功能未做到通知IdP。详见sign out url for generic oauth