Attribuer le rôle Utilisateur du compte de service pour les comptes de service exécutés en tant que

Cette page fait partie de la section Se préparer aux prochains changements d'autorisation. Il indique qui a besoin du rôle Utilisateur de compte de service (roles/iam.serviceAccountUser) et comment l'attribuer.

Qui a besoin du rôle "Utilisateur du compte de service" ?

Les comptes principaux suivants ont besoin du rôle Utilisateur du compte de service sur le compte de service listé :

Principal Compte de service
Toute personne qui publie ou teste l'intégration, y compris l'automatisation du déploiement Compte de service "Exécuter en tant que" de l'intégration
Toute personne qui exécute l'intégration via l'API ou la console Google Cloud , de manière synchrone ou asynchrone Compte de service "Exécuter en tant que" de l'intégration
Compte de service utilisé par un déclencheur pour démarrer l'intégration : adresse e-mail du compte de service d'un déclencheur Cloud Scheduler, ou compte de service d'un déclencheur Cloud Pub/Sub, d'un déclencheur Eventarc ou d'un déclencheur d'événement Integration Connectors. Cette étape n'est pas nécessaire si ce compte est le compte de service "Exécuter en tant que" lui-même. Compte de service "Exécuter en tant que" de l'intégration
Toute personne qui approuve ou reprend une exécution suspendue Compte de service "Exécuter en tant que" de l'intégration
Toute personne qui lance une intégration appelant une sous-intégration avec la tâche Appeler une intégration. Pour une intégration qu'un déclencheur avec un compte de service démarre, il s'agit du compte de service du déclencheur. Compte de service "Exécuter en tant que" de la sous-intégration, en plus de celui de l'intégration appelante
Compte de service "Exécuter en tant que" de l'intégration appelante lorsqu'elle appelle une sous-intégration de manière asynchrone. Cette étape n'est pas nécessaire si les deux intégrations utilisent le même compte de service. Compte de service "Exécuter en tant que" de la sous-intégration
Toute personne qui crée ou modifie un profil d'authentification de type Compte de service ou Jeton OIDC Le compte de service indiqué dans le profil
Toute personne qui publie ou teste une intégration utilisant ce profil Le compte de service indiqué dans le profil
Toute personne qui exécute une intégration qui atteint une tâche à l'aide de ce profil. Pour une exécution asynchrone ou planifiée, il s'agit du compte de service d'exécution de l'intégration ou de l'agent de service Application Integration, service-PROJECT_NUMBER@gcp-sa-integrations.iam.gserviceaccount.com, si l'intégration n'en possède pas. Dans ce cas, il est préférable de définir un compte de service "Exécuter en tant que". Le compte de service indiqué dans le profil

L'enregistrement d'un brouillon ne nécessite pas le rôle d'utilisateur du compte de service. Les vérifications lors de la publication, du test et de l'enregistrement des profils d'authentification s'appliquent déjà. Les vérifications concernant l'exécution, l'approbation, l'appel de sous-intégrations et l'exécution de tâches qui utilisent un profil d'authentification prennent effet au fur et à mesure du déploiement. Accordez donc l'accès à chaque ligne maintenant pour que vos intégrations continuent de fonctionner lorsqu'elles le feront.

Attribuer le rôle

Pour attribuer le rôle à une personne, exécutez la commande suivante :

gcloud iam service-accounts add-iam-policy-binding SERVICE_ACCOUNT \
    --project=SERVICE_ACCOUNT_PROJECT_ID \
    --member='user:PRINCIPAL' \
    --role='roles/iam.serviceAccountUser'

Remplacez les éléments suivants :

  • SERVICE_ACCOUNT : adresse e-mail du compte de service "Exécuter en tant que" ou du compte indiqué dans un profil d'authentification
  • SERVICE_ACCOUNT_PROJECT_ID : ID du projet propriétaire du compte de service.
  • PRINCIPAL : adresse e-mail de l'utilisateur

Pour les autres types de comptes principaux, utilisez le préfixe --member correspondant :

  • Groupes : utilisez group:. Nous vous recommandons d'utiliser des groupes Google plutôt que des comptes utilisateur individuels pour simplifier la gestion des accès lorsque les membres de l'équipe changent.
  • Comptes de service : utilisez serviceAccount: pour les processus automatisés, les applications et les comptes de service de déclencheur.

Pour faire de même dans la console Google Cloud  :

  1. Accédez à IAM et administration > Comptes de service.
  2. Sélectionnez le compte de service.
  3. Cliquez sur Autorisations > Accorder l'accès.

Pour accorder l'accès, vous devez disposer de l'autorisation roles/iam.serviceAccountAdmin sur le compte de service. Les propriétaires de projet y ont accès. Pour en savoir plus, consultez Gérer l'accès aux comptes de service.

Étapes suivantes