Integrationen finden, für die ein Dienstkonto für die Ausführung als erforderlich ist
Diese Seite ist Teil des Dokuments Auf anstehende Änderungen bei der Autorisierung vorbereiten. So können Sie die Integrationen finden, für die ein Dienstkonto vom Typ „Ausführen als“ erforderlich ist, bevor die Änderungen wirksam werden.
Feststellen, ob eine Integration eine benötigt
Sie benötigen ein „Ausführen als“-Dienstkonto nur, wenn für den gesamten Lauf keine Anmeldedaten verfügbar sind. Das kann in zwei Situationen passieren:
| So wird die Integration ausgeführt | Sind die Anmeldedaten einer Person verfügbar? | Ist ein Dienstkonto für die Ausführung als erforderlich? |
|---|---|---|
| Synchron: Jemand startet den Vorgang und wartet auf das Ergebnis. | Ja, für den gesamten Lauf | Nein |
| Asynchron: Die Aufgabe wird in die Warteschlange gestellt und später abgeschlossen. | Nur zum Zeitpunkt der Auslösung | Ja |
| Unattended (Unbeaufsichtigt): Der Ablauf wird durch einen Zeitplan oder ein Ereignis gestartet. | Nein, es ist nie eine Person | Ja |
Betroffene Integrationen identifizieren
Läuft es jemals ohne Person? Das ist der Fall, wenn eine der folgenden Bedingungen zutrifft:
- Er hat einen anderen Trigger als einen API- oder privaten-Trigger, z. B. einen Zeitplan-, Cloud Scheduler-, Cloud Pub/Sub-, Salesforce>-, Integration Connectors-Ereignis- oder Eventarc-Trigger.
- Die Planung erfolgt über die API mit
scheduleIntegrations. - Eine andere Integration ruft sie als asynchrone Subintegration mit der Aufgabe Anrufintegration auf. Für die untergeordnete Integration ist ein eigenes Dienstkonto für die Ausführung erforderlich, auch wenn die aufrufende Integration ein solches Konto hat.
- Dazu wird die Aufgabe Suspend oder Approval verwendet. Ein Lauf kann dort warten und dann von selbst ablaufen.
Zweitens: Ist das zugehörige Dienstkonto leer? Führen Sie den folgenden Befehl aus, um alle veröffentlichten Versionen in einer Region zusammen mit dem zugehörigen Dienstkonto aufzulisten:
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'
Ersetzen Sie Folgendes:
REGION: Die Region Ihrer Integration. Eine Liste der unterstützten Regionen finden Sie unter Standorte.PROJECT_IDist die ID Ihres Google Cloud-Projekts
- Bei einer Zeile mit
NONEist nur dann eine Aktion erforderlich, wenn auch die erste Hälfte zutrifft. - Wenn Sie stattdessen eine einzelne Integration prüfen möchten, öffnen Sie sie im Integrationseditor und klicken Sie in der Symbolleiste des Editors auf (Integrationseinstellungen). Im Feld Dienstkonto wird das Dienstkonto angezeigt, das als Ausführungskonto verwendet wird. Es ist leer, wenn die Integration kein Dienstkonto hat.
Nächste Schritte
- Rolle „Dienstkontonutzer“ zuweisen für die Dienstkonten, die Sie bereits verwenden.
- Legen Sie für jede gefundene Integration ein Dienstkonto für die Ausführung fest.