Aller au contenu principal
Version : 2.6.7

Authentification OAuth GCP

Traduction Bêta Non Officielle

Cette page a été traduite par PageTurner AI (bêta). Non approuvée officiellement par le projet. Vous avez trouvé une erreur ? Signaler un problème →

Lorsque Chaos Mesh est déployé sur Google Cloud Platform, vous pouvez vous connecter à Chaos Dashboard via Google OAuth. Ce document explique comment activer et configurer cette fonctionnalité.

Créer un client OAuth

Créez un client OAuth GCP et récupérez l'ID client et le Secret client en suivant le guide Setting up OAuth 2.0.

  1. Accédez à la Console Google Cloud Platform.

  2. Dans la liste des projets, sélectionnez un projet existant ou créez-en un nouveau.

  3. Si la page APIs & services ne se charge pas automatiquement, ouvrez le menu latéral gauche de la console et sélectionnez manuellement "APIs & services".

  4. Cliquez sur "Credentials" dans le menu de gauche.

  5. Cliquez sur "Create Credentials", puis sélectionnez "OAuth client ID".

  6. Choisissez "Web Application" comme type d'application, puis renseignez les informations supplémentaires et l'URL de redirection de Chaos Dashboard : ROOT_URL/api/auth/gcp/callback. Ici, ROOT_URL correspond à l'URL racine de Chaos Dashboard, par exemple http://localhost:2333. Cette URL peut être définie via le paramètre de configuration dashboard.rootUrl avec helm.

  7. Cliquez sur "Create".

Après la création du client, pensez à conserver l'ID client et le Secret client pour les étapes suivantes.

Configurer et démarrer Chaos Mesh

info

Mise à jour : Depuis v2.7.0, vous pouvez utiliser un Secret pour stocker l'ID client et le Secret client. Nous vous recommandons d'utiliser cette méthode.

Cette modification évite d'exposer l'ID client et le Secret client publiquement. Dans les versions précédentes, ces éléments étaient spécifiés directement dans les valeurs, ce qui n'est généralement pas sécurisé.

Pour plus d'informations, consultez https://github.com/chaos-mesh/chaos-mesh/issues/4206.

Pour activer cette fonctionnalité, configurez les paramètres suivants dans les 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: ''

Si Chaos Mesh est déjà installé, mettez à jour les paramètres via helm upgrade. Sinon, installez Chaos Mesh via helm install.

Connexion avec Google

Ouvrez Chaos Dashboard et cliquez sur l'icône Google dans la fenêtre d'authentification.

img
img

Après vous être connecté à votre compte Google et avoir accordé les autorisations au client OAuth, la page redirige automatiquement vers Chaos Dashboard avec un statut connecté. Vous disposerez alors des mêmes permissions que ce compte Google dans le cluster. Pour ajouter d'autres permissions, modifiez-les via RBAC (contrôle d'accès basé sur les rôles). Par exemple :

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

Avec cette configuration, l'utilisateur example@gmail.com est autorisé à consulter ou créer toute expérience de chaos.