Gérer l'accès à Fault Injection Testing

Cette page explique comment utiliser Identity and Access Management (IAM) pour gérer l'accès aux fonctionnalités de test d'injection de pannes.

Les administrateurs ou propriétaires de vos ressources Google Cloudpeuvent accorder des rôles et autorisations de test d'injection de défaillance.

Les administrateurs sont responsables de s'assurer que les utilisateurs disposent de l'accès dont ils ont besoin, et rien de plus (principe du moindre privilège). Étant donné que les tests d'injection de défaillance nécessitent des comptes pour configurer et exécuter des expériences, le principe du moindre privilège est particulièrement important. En effet, les expériences de défaillance peuvent entraîner des pannes inattendues si elles sont exécutées sur des ressources incorrectes ou par des utilisateurs non autorisés ou non formés.

Activer les API pour le Fault Injection Testing

Pour activer l'API Fault Injection Testing pour votre projet :

  1. Accédez à la page "Bibliothèque d'API" de la consoleGoogle Cloud .
  2. Recherchez faulttesting et sélectionnez l'API Fault Testing.
  3. Sélectionnez le bouton Activer.

Une boîte de dialogue indiquant la progression de l'activation de l'API s'affiche.

Définir les autorisations requises

Fault Injection Testing propose les rôles suivants :

Nom du rôle

Description

Autorisations

roles/faulttesting.operator

Administrateur/Opérateur de test de panne

Accès complet aux ressources de test de panne. Les opérateurs doivent également disposer des autorisations d'éditeur pour les ressources Google Cloud concernées.

faulttesting.googleapis.com/operations.delete

faulttesting.googleapis.com/operations.cancel

faulttesting.googleapis.com/experiments.create

faulttesting.googleapis.com/experiments.update

faulttesting.googleapis.com/experiments.delete

faulttesting.googleapis.com/validations.create

faulttesting.googleapis.com/validations.delete

faulttesting.googleapis.com/validationResources.create

faulttesting.googleapis.com/validationResources.update

faulttesting.googleapis.com/validationResources.delete

faulttesting.googleapis.com/affectedResources.create

faulttesting.googleapis.com/affectedResources.update

faulttesting.googleapis.com/affectedResources.delete

faulttesting.googleapis.com/experimentTemplates.create

faulttesting.googleapis.com/experimentTemplates.update

faulttesting.googleapis.com/experimentTemplates.delete

cloudresourcemanager.googleapis.com/projects.get

cloudresourcemanager.googleapis.com/projects.list

faulttesting.googleapis.com/operations.list

faulttesting.googleapis.com/operations.get

faulttesting.googleapis.com/locations.list

faulttesting.googleapis.com/locations.get

faulttesting.googleapis.com/experiments.list

faulttesting.googleapis.com/experiments.get

faulttesting.googleapis.com/validations.list

faulttesting.googleapis.com/validations.get

faulttesting.googleapis.com/validationResources.list

faulttesting.googleapis.com/validationResources.get

faulttesting.googleapis.com/affectedResources.list

faulttesting.googleapis.com/affectedResources.get

faulttesting.googleapis.com/experimentTemplates.list

faulttesting.googleapis.com/experimentTemplates.get

roles/faulttesting.viewer

Lecteur de test de panne

Accès en lecture seule aux ressources de test de panne.

cloudresourcemanager.googleapis.com/projects.get

cloudresourcemanager.googleapis.com/projects.list

faulttesting.googleapis.com/operations.list

faulttesting.googleapis.com/operations.get

faulttesting.googleapis.com/locations.list

faulttesting.googleapis.com/locations.get

faulttesting.googleapis.com/experiments.list

faulttesting.googleapis.com/experiments.get

faulttesting.googleapis.com/validations.list

faulttesting.googleapis.com/validations.get

faulttesting.googleapis.com/validationResources.list

faulttesting.googleapis.com/validationResources.get

faulttesting.googleapis.com/affectedResources.list

faulttesting.googleapis.com/affectedResources.get

faulttesting.googleapis.com/experimentTemplates.list

faulttesting.googleapis.com/experimentTemplates.get

Utilisez Google Cloud CLI pour accorder des rôles et des autorisations. Pour accorder le faulttesting.operator role, exécutez la commande suivante :

gcloud projects add-iam-policy-binding ${PROJECT_ID} \
  --member {USER|GROUP|SERVICE_ACCOUNT} \
  --role roles/faulttesting.operator

Voici un exemple de syntaxe pour ajouter faulttesting.operator à l'utilisateur anon@example.com in projectexample-project :

gcloud projects add-iam-policy-binding example-project --member=user:anon@example.com --role=roles/faulttesting.operator