GCP-OAuth-Authentifizierung
Diese Seite wurde von PageTurner AI übersetzt (Beta). Nicht offiziell vom Projekt unterstützt. Fehler gefunden? Problem melden →
Wenn Chaos Mesh auf Google Cloud Platform bereitgestellt ist, können Sie sich über Google OAuth im Chaos Dashboard anmelden. Dieses Dokument erklärt, wie Sie diese Funktion aktivieren und konfigurieren.
OAuth-Client erstellen
Erstellen Sie einen GCP-OAuth-Client und rufen Sie Client-ID und Client Secret gemäß der Anleitung Setting up OAuth 2.0 ab.
-
Öffnen Sie die Google Cloud Platform Console.
-
Wählen Sie aus der Projektliste ein Projekt aus oder erstellen Sie ein neues.
-
Falls die Seite "APIs & Services" nicht automatisch geladen wurde, öffnen Sie das linke Menü der Konsole und wählen Sie manuell "APIs & Services" aus.
-
Klicken Sie links auf "Credentials".
-
Klicken Sie auf "Create Credentials" und wählen Sie dann "OAuth client ID".
-
Wählen Sie "Web Application" als Anwendungstyp aus und geben Sie zusätzliche Informationen sowie die Redirect-URL des Chaos Dashboards ein:
ROOT_URL/api/auth/gcp/callback. Hierbei istROOT_URLdie Stamm-URL des Chaos Dashboards, z.B.http://localhost:2333. Diese URL kann über die Konfigurationsoptiondashboard.rootUrlmittelshelmfestgelegt werden. -
Klicken Sie auf "Create".
Bewahren Sie Client-ID und Client Secret nach der Erstellung für die nächsten Schritte auf.
Chaos Mesh konfigurieren und starten
Update: Ab v2.7.0 können Sie Client-ID und Client Secret in einem Secret speichern. Wir empfehlen diese Methode.
Diese Änderung verhindert die öffentliche Preisgabe der Anmeldedaten. In früheren Versionen wurden Client-ID und Client Secret direkt in den Werten angegeben, was allgemein unsicher ist.
Weitere Informationen finden Sie unter https://github.com/chaos-mesh/chaos-mesh/issues/4206.
Um die Funktion zu aktivieren, setzen Sie folgende Konfigurationsparameter in den Helm-Charts:
dashboard:
rootUrl: http://localhost:2333
gcpSecurityMode:
enabled: true
# Old configuration items for compatibility.
clientId: ''
clientSecret: ''
# References existing Kubernetes secret containing `GCP_CLIENT_ID` and `GCP_CLIENT_SECRET`.
existingSecret: ''
Falls Chaos Mesh bereits installiert ist, aktualisieren Sie die Konfiguration mittels helm upgrade. Andernfalls installieren Sie Chaos Mesh mit helm install.
Anmeldung mit Google
Öffnen Sie das Chaos Dashboard und klicken Sie im Authentifizierungsfenster auf das Google-Symbol.

Nach erfolgreicher Anmeldung beim Google-Konto und Erteilung der Berechtigungen für den OAuth-Client werden Sie automatisch im Chaos Dashboard angemeldet. Sie verfügen nun über dieselben Berechtigungen wie das Google-Konto in diesem Cluster. Zusätzliche Berechtigungen können Sie über RBAC (Role-Based Access Control) konfigurieren. Beispiel:
kind: ClusterRole
apiVersion: rbac.authorization.k8s.io/v1
metadata:
name: chaos-mesh-cluster-manager
rules:
- apiGroups:
- chaos-mesh.org
resources: ['*']
verbs: ['get', 'list', 'watch', 'create', 'delete', 'patch', 'update']
---
kind: ClusterRoleBinding
apiVersion: rbac.authorization.k8s.io/v1
metadata:
name: cluster-manager-binding
namespace: chaos-mesh
subjects:
- kind: User
name: example@gmail.com
roleRef:
kind: ClusterRole
name: chaos-mesh-cluster-manager
apiGroup: rbac.authorization.k8s.io
Durch diese Konfiguration erhält der Benutzer example@gmail.com die Berechtigung, Chaos-Experimente einzusehen oder zu erstellen.