Identifier les intégrations qui nécessitent un compte de service "Exécuter en tant que"
Cette page fait partie de la section Se préparer aux prochains changements d'autorisation. Il vous aide à identifier les intégrations qui nécessitent un compte de service "Exécuter en tant que" avant que les modifications ne prennent effet.
Déterminer si une intégration en a besoin
Vous n'avez besoin d'un compte de service "Exécuter en tant que" que lorsque les identifiants de personne ne sont disponibles pour l'ensemble de l'exécution. Cela se produit dans deux cas uniquement :
| Fonctionnement de l'intégration | Les identifiants d'une personne sont-ils disponibles ? | Avez-vous besoin d'un compte de service "Exécuter en tant que" ? |
|---|---|---|
| Synchroniquement : une personne lance l'opération et attend le résultat. | Oui, pendant toute la course | Non |
| Asynchrone : la tâche est mise en file d'attente et se termine plus tard. | Uniquement au moment où il est déclenché | Oui |
| Sans surveillance : une programmation ou un événement le démarrent. | Non, il n'y a jamais de personne | Oui |
Identifier les intégrations concernées
Tout d'abord, le véhicule roule-t-il parfois sans personne à bord ? Oui, si l'une des conditions suivantes est remplie :
- Il comporte un déclencheur autre qu'un déclencheur API ou privé, par exemple un déclencheur Schedule, Cloud Scheduler, Cloud Pub/Sub, Salesforce, Integration Connectors event ou Eventarc.
- Quelque chose le planifie via l'API avec
scheduleIntegrations. - Une autre intégration l'appelle en tant que sous-intégration asynchrone à l'aide de la tâche Appeler une intégration. La sous-intégration a besoin de son propre compte de service "Exécuter en tant que", même si l'intégration appelante en possède un.
- Il utilise la tâche Suspendre ou Approuver, où une exécution peut rester en attente et expirer d'elle-même.
Deuxièmement, son compte de service "Exécuter en tant que" est-il vide ? Pour lister toutes les versions publiées dans une région avec leur compte de service "Exécuter en tant que", exécutez la commande suivante :
curl -s -G -H "Authorization: Bearer $(gcloud auth print-access-token)" \
--data-urlencode "filter=state=ACTIVE" \
--data-urlencode "pageSize=1000" \
"https://REGION-integrations.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/integrations/-/versions" \
| jq -r '.integrationVersions[]
| [ .name, (.runAsServiceAccount // "NONE") ]
| @tsv'
Remplacez les éléments suivants :
REGION: région de votre intégration. Pour obtenir la liste des régions prises en charge, consultez Emplacements.PROJECT_ID: ID de votre projet Google Cloud
- Une ligne affichant
NONEne nécessite une action que si la première moitié s'applique également. - Pour vérifier une seule intégration, ouvrez-la dans l'éditeur d'intégrations, puis cliquez sur (Paramètres d'intégration) dans la barre d'outils de l'éditeur. Le champ Compte de service affiche le compte de service "Exécuter en tant que". Il est vide si l'intégration n'en possède pas.
Étapes suivantes
- Attribuez le rôle Utilisateur du compte de service aux comptes de service exécutés en tant qu'utilisateur que vous utilisez déjà.
- Définissez un compte de service "Exécuter en tant que" sur chaque intégration que vous avez trouvée.