温馨提示:本文翻译自stackoverflow.com,查看原文请点击:其他 - Grafana role assignment using Azure AD OAuth
azure-active-directory grafana oauth

其他 - 使用Azure AD OAuth的Grafana角色分配

发布于 2020-04-10 10:05:34

我正在尝试使用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登录获得角色分配的有效示例吗?

查看更多

提问者
GhostInThePotato
被浏览
146
GhostInThePotato 2020-01-31 21:31

随着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