标签:http 223.203 接口 认证 oauth Oauth 10.106 Grafana
使用grafana auth.generic_oauth方式访问grafana dashboards,记录配置及接口开发过程。以供以后查阅
需求:在自建平台上以认证用户,跳转至grafana,且是已登陆状态。
根据官方文档介绍,有三种方法实现:
使用API KEY方式;需要解决跨域问题。
配置打开匿名登陆方式,不符合需求。
使用auth.generic_oauth方式,需要在自建平台开发统一认证接口。
一、Grafana Oauth配置
配置认证接口跳转域名:
[server]
# Protocol (http, https, h2, socket)
protocol = http
# The ip address to bind to, empty will bind to all interfaces
http_addr = 10.106.223.203
# The http port to use
http_port = 3000
# The public facing domain name used to access grafana from a browser
domain = 10.106.223.203 # 我这里是测试环境,IP地址或正式域名都可以,认证接口可以访问到就行
# Redirect to correct domain if host header does not match domain
# Prevents DNS rebinding attacks
enforce_domain = false
# The full public facing url
root_url = %(protocol)s://%(domain)s:%(http_port)s/ # 如果使用的是正式域名,可能不需要“:%(http_port)s/”端口信息,删掉就行
2. Grafana Oauth配置
[auth.generic_oauth]
name = OAuth
enabled = true # 默认是false,改为true。打开oauth认证
allow_sign_up = true
client_id = panda # 客户端ID,自行决定使用方式。我这里使用client_id去验证自建平台中是否存在这个用户,并以这个用户去登陆Grafana
client_secret = panda@example.com # 没看到GET或POST请求中有这个参数。字面意思是验证client密码的
scopes = user:email # 统一认证接口回传的参数域'{"name": "panda", "email": "panda@example.com"}'
#scopes = user:email:org
email_attribute_name = email:primary # 不知道怎么用
email_attribute_path =
login_attribute_path =
role_attribute_path =
id_token_attribute_name =
auth_url = http://10.106.223.203:7000/sso/oauth/authorize/ # 自建平台认证接口
token_url = http://10.106.223.203:7000/sso/oauth/token/ # 自建平台用户token生成接口
api_url = http://10.106.223.203:7000/sso/oauth/user/ # 自建平台验证token,并回传用户信息接口
allowed_domains =
#allowed_domains = 10.106.223.203
team_ids =
allowed_organizations =
tls_skip_verify_insecure = false
tls_client_cert =
tls_client_key =
tls_client_ca =
标签:http,223.203,接口,认证,oauth,Oauth,10.106,Grafana 来源: https://blog.51cto.com/784687488/2701783
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。