Skip to content

Autenticacion via Azure

Creacion de la aplicacion

Creamos una nueva aplicacion desde App Registrations > New Registration

  • Supported Account types:
    Por ejemplo "Accounts in this organizational directory only"
  • Redirect URI
    En el asistente inicial, ponemos https://migrafana.dominio.com

Postconfiguracion de la aplicacion

  • Segunda Redirect URl
    En Manage - Authentication - Web - Redirect URls creamos una nueva con https://migrafana.dominio.com/login/azuread

  • Client Secret
    En "Manage - Certificates & secrets - Client secrets" creamos un nuevo client secret y colocamos su valor en la variable GF_AUTH_AZUREAD_CLIENT_SECRET

  • Groups claim
    En "Manage - Token Configuration" agregamos un groups claim seleccionando "security groups "y "Groups assigned to the application"

  • Api permissions
    Deberiamos tener Microsoft Graph - User.Read

  • App Roles Creamos 3 roles con el mismo valor Display Name, Value y Description y eligiendo "Users/Groups" como "Allowed member types". Ese valor sera Viewer, Editor y GrafanaAdmin

  • Agregar grupos Desde Enterprise Applications entramos en nuestra aplicacion y en Manage - Users and groups elegimos los grupos y usuarios que queremos y los mapemos a los roles deseados

Lista de variables de entorno

Autenticacion

GF_AUTH_AZUREAD_AUTH_URL: valor que figura como "OAuth 2.0 authorization endpoint (v2)" en "Endpoints"
GF_AUTH_AZUREAD_TOKEN_URL: valor que figura como "OAuth 2.0 token endpoint (v2)" en "Endpoints"
GF_AUTH_AZUREAD_CLIENT_ID: valor que figura como "Application (client) ID" en Overview
GF_AUTH_AZUREAD_CLIENT_SECRET: valor del secret creado anteriormente

Usuarios y asignacion de roles

Si no hay definido ningun rol en la aplicacion, el valor asignado sera el indicado en GF_USERS_AUTO_ASSIGN_ORG_ROLE. Este valor por defecto es Viewer y tambien puede ser Admin, Editor y None.

Este funcionamiento de asignar un rol por defecto puede quitarse poniendo a true GF_AUTH_AZUREAD_ROLE_ATTRIBUTE_STRICT, lo que no permite el login si no hay un rol definido para el usuario.

Variable Valor raz. Funcion
GF_USERS_AUTO_ASSIGN_ORG_ROLE Viewer permite definir el rol predeterminado para los usuarios de la organizacion principal
GF_AUTH_AZUREAD_ROLE_ATTRIBUTE_STRICT deshabilita la asignacion de un rol por defecto
GF_AUTH_AZUREAD_SKIP_ORG_ROLE_SYNC evita traerse los roles del Azure.

Puede ser una buena practica habilitar GF_AUTH_AZUREAD_ROLE_ATTRIBUTE_STRICT, lo que fuerza a crear roles de aplicacion

Misc

Variable Valor raz. Funcion
GF_AUTH_AZUREAD_ALLOW_ASSIGN_GRAFANA_ADMIN false Deshabilita al rol GrafanaAdmin el tener privilegios de administrador
GF_AUTH_AZUREAD_ALLOW_SIGN_UP true
GF_AUTH_AZUREAD_AUTO_LOGIN false Habilitarlo se salta la pantalla de login
GF_AUTH_AZUREAD_ENABLED true Habilita Azure ad Auth
GF_AUTH_AZUREAD_NAME "Azure AD" Nombre de la configuracion
GF_AUTH_AZUREAD_SCOPES "openid email profile"
GF_AUTH_AZUREAD_USE_PKCE true
GF_AUTH_AZUREAD_ALLOWED_ORGANIZATIONS identificador de la organizacion que queremos permitir el acceso
GF_AUTH_AZUREAD_ALLOWED_GROUPS grupos que permitimos el acceso separado por comas o espacios de i
GF_AUTH_AZUREAD_ALLOWED_DOMAIN dominios que permitmos el acceso separado por comas o espacios