Grafana
Verwendung von Casdoor zur Authentifizierung in Grafana
Grafana unterstützt Authentifizierung über OAuth. Daher ist es für Benutzer extrem einfach, sich mit Casdoor bei Grafana anzumelden. Es sind nur einige Schritte und einfache Konfigurationen notwendig, um dies zu erreichen.
Hier ist ein Tutorial, wie man Casdoor zur Authentifizierung in Grafana verwendet. Bevor Sie fortfahren, stellen Sie bitte sicher, dass Sie Grafana installiert haben und es läuft.
Schritt 1: Erstellen Sie eine App für Grafana in Casdoor
Hier ist ein Beispiel für das Erstellen einer App in Casdoor:
Bitte kopieren Sie das Client Secret und die Client ID für den nächsten Schritt.
Bitte fügen Sie die Callback-URL von Grafana hinzu. Standardmäßig ist der OAuth-Callback von Grafana /login/generic_oauth
. Bitte fügen Sie diese URL korrekt zusammen.
Schritt 2: Konfiguration von Grafana ändern
Standardmäßig befindet sich die Konfigurationsdatei für OAuth unter conf/defaults.ini
im Arbeitsverzeichnis von Grafana.
Bitte finden Sie den Abschnitt [auth.generic_oauth]
und ändern Sie die folgenden Felder:
[auth.generic_oauth]
name = Casdoor
icon = signin
enabled = true
allow_sign_up = true
client_id = <client ID from previous step>
client_secret = <client secret from previous step>
auth_url = <Casdoor endpoint>/login/oauth/authorize
token_url = <Casdoor endpoint>/api/login/oauth/access_token
Über HTTPS
Wenn Sie HTTPS für Casdoor nicht aktivieren möchten oder wenn Sie Grafana ohne HTTPS aktiviert bereitstellen, setzen Sie bitte auch tls_skip_verify_insecure = true
.
Über redirectURI nach Anmeldung mit Casdoor
Wenn die Redirect-URI nach der Anmeldung mit Casdoor in Grafana nicht korrekt ist, möchten Sie vielleicht root_url konfigurieren.
[server]
http_port = 3000
# The public-facing domain name used to access Grafana from a browser
domain = <your IP here>
# The full public-facing URL
root_url = %(protocol)s://%(domain)s:%(http_port)s/
Verwandte Links:
Über Rollenzuordnung
Sie möchten vielleicht role_attribute_path
konfigurieren, um die Rolle Ihres Benutzers über role_attribute_path auf Grafana abzubilden.
[auth.generic_oauth]
role_attribute_path = contains(roles[*].name, 'admin') && 'Admin' || contains(roles[*].name, 'editor') && 'Editor' || 'Viewer'
role_attribute_strict = true
allow_assign_grafana_admin = true
Der JMESPath-Ausdruck nach role_attribute_path
ist hier sehr wichtig. Bitte schauen Sie in der Grafana-Dokumentation nach.
Schritt 3: Überprüfen Sie, ob es funktioniert
Schließen Sie Grafana und starten Sie es neu.
Gehen Sie zur Anmeldeseite. Sie sollten so etwas sehen: