Set-OPS-Public/roles/serveur_grafana/defaults/main.yml
Daniel Allaire c5df8fac4a RBAC via SSO : rôle de realm Keycloak → niveau Grafana (authZ)
Machinerie additive/idempotente dans serveur_keycloak (rbac-oidc.yml) :
rôles de realm + mapper 'roles' sur les clients choisis + assignations
rôle→utilisateur. kcadm à chaud (zéro coupure SSO). Grafana :
role_attribute_path (grafana-admin→Admin, grafana-editor→Editor, sinon
Viewer). Prouvé sur id-sso-01 (idempotence) : testmail = grafana-editor.

Complète le dashboard logs (Viewer-friendly) : les deux volets de la
question « testmail peut-il voir les logs ? ».

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-04 16:58:15 -04:00

39 lines
2.1 KiB
YAML

---
serveur_grafana_paquets:
- grafana
serveur_grafana_service: "grafana-server"
serveur_grafana_port: 3000
# Publication (derriere serveur_nginx, TLS termine a l'edge).
serveur_grafana_hostname: "grafana.{{ domaine_interne }}"
serveur_grafana_root_url: "https://{{ serveur_grafana_hostname }}/"
# Datasources (Prometheus + Loki, co-localises sur obs-01).
serveur_grafana_prometheus_url: "http://localhost:9090"
serveur_grafana_loki_url: "http://localhost:3100"
# Dashboards provisionnés (fichiers) — répertoire lu par le provider Grafana.
serveur_grafana_dashboards_dir: "/var/lib/grafana/dashboards"
# Secret OBLIGATOIRE (Ansible Vault).
serveur_grafana_admin_password: "{{ vault_grafana_admin | default('') }}" # rempli depuis la voute (vault_grafana_admin)
# --- SSO OIDC (Keycloak, realm applicatif) ---
# « Se connecter avec Chezlepro » : Grafana délègue l'auth à Keycloak (client confidentiel).
# Requiert client_pki sur ce nœud (confiance step_ca pour les appels serveur→Keycloak) +
# résolution de l'hôte Keycloak (edge). Le client OIDC doit exister dans le realm.
serveur_grafana_oidc_actif: true
serveur_grafana_oidc_nom: "Chezlepro"
serveur_grafana_oidc_client_id: "grafana"
serveur_grafana_oidc_client_secret: "{{ vault_grafana_oidc | default('') }}" # voûte (vault_grafana_oidc)
serveur_grafana_oidc_realm: "chezlepro"
serveur_grafana_oidc_base: "https://keycloak.{{ domaine_interne }}/realms/{{ serveur_grafana_oidc_realm }}/protocol/openid-connect"
serveur_grafana_oidc_scopes: "openid email profile"
# RBAC via SSO : mappe le claim 'roles' (rôles de realm Keycloak) vers le niveau Grafana.
# Défaut : grafana-admin→Admin, grafana-editor→Editor, sinon Viewer. Vider pour désactiver.
serveur_grafana_oidc_role_path: "contains(roles[*], 'grafana-admin') && 'Admin' || contains(roles[*], 'grafana-editor') && 'Editor' || 'Viewer'"
# Depot apt officiel Grafana (partage avec serveur_loki).
serveur_grafana_depot_cle_url: "https://apt.grafana.com/gpg-full.key"
serveur_grafana_depot_cle_fichier: "/etc/apt/keyrings/grafana.asc"
serveur_grafana_depot_source: "deb [signed-by=/etc/apt/keyrings/grafana.asc] https://apt.grafana.com stable main"