我正在尝试使用Azure AD OAuth在Grafana中为某些用户组分配管理员角色。
我可以使用此文档使用Azure AD凭据成功登录:使用Azure Active Directory设置OAuth2
根据此页面,我需要在某个位置包含role_attribute_path:角色映射
role_attribute_path = contains(info.groups[*], 'admin') && 'Admin' || contains(info.groups[*], 'editor') && 'Editor' || 'Viewer'
有人使用Azure AD登录获得角色分配的有效示例吗?
随着Grafana 6.6.0的引入,现在可以将OAuth与Azure AD一起使用进行角色分配。
我将以下内容放入config ini文件中,以将Admin角色分配给某个Azure AD组中的任何人,其他人都将成为查看器:
[auth.generic_oauth]
name = Azure AD
enabled = true
allow_sign_up = true
client_id = {{ .azure.client.id }}
client_secret = {{ .azure.client.secret }}
scopes = openid email profile
auth_url = https://login.microsoftonline.com/{{ .azure.tenantid }}/oauth2/authorize
token_url = https://login.microsoftonline.com/{{ .azure.tenantid }}/oauth2/token
api_url =
team_ids =
allowed_organizations =
role_attribute_path = contains(groups[*], '{{ .azure.admin_group }}') && 'Admin' || 'Viewer'
哪里
{{ .azure.client.id}}
是Azure AD,应用程序注册,应用程序客户端ID
{{ .azure.client.secret}}
是与上述已注册应用程序相关联的客户秘密
{{ .azure.tenantid }}
是Azure AD租户ID
{{ .azure.admin_group }}
是您要用作管理员角色的Azure AD组的ObjectID