Rolle „Service Account User“ für Dienstkonten vom Typ „Run-As“ gewähren
Diese Seite ist Teil des Dokuments Auf anstehende Änderungen bei der Autorisierung vorbereiten. Dort wird aufgeführt, wer die Rolle „Dienstkontonutzer“ (roles/iam.serviceAccountUser) benötigt und wie sie zugewiesen wird.
Wer benötigt die Rolle „Service Account User“?
Die folgenden Hauptkonten benötigen die Rolle „Dienstkontonutzer“ für das aufgeführte Dienstkonto:
| Hauptkonto | Dienstkonto |
|---|---|
| Alle, die die Integration veröffentlichen oder testen, einschließlich der Automatisierung der Bereitstellung | Das „Ausführen als“-Dienstkonto der Integration |
| Alle, die die Integration über die API oder die Google Cloud Console synchron oder asynchron ausführen | Das „Ausführen als“-Dienstkonto der Integration |
| Das Dienstkonto, das von einem Trigger zum Starten der Integration verwendet wird: die E-Mail-Adresse des Dienstkontos eines Cloud Scheduler-Triggers, das Dienstkonto eines Cloud Pub/Sub-Triggers, eines Eventarc-Triggers oder eines Integration Connectors-Ereignistriggers. Nicht erforderlich, wenn dieses Konto das Dienstkonto „Ausführen als“ ist. | Das „Ausführen als“-Dienstkonto der Integration |
| Personen, die einen pausierten Lauf genehmigen oder fortsetzen | Das „Ausführen als“-Dienstkonto der Integration |
| Die Person, die eine Integration startet, mit der eine Subintegration mit der Aufgabe Integration aufrufen aufgerufen wird. Bei einer Integration, die durch einen Trigger mit einem Dienstkonto gestartet wird, ist dies das Dienstkonto des Triggers. | Das Dienstkonto „Ausführen als“ der untergeordneten Integration zusätzlich zum |
| Das Dienstkonto der aufrufenden Integration, das für die Ausführung verwendet wird, wenn eine Subintegration asynchron aufgerufen wird. Nicht erforderlich, wenn beide Integrationen dasselbe Dienstkonto verwenden. | Das „Ausführen als“-Dienstkonto der untergeordneten Integration |
| Jeder, der ein Authentifizierungsprofil vom Typ Dienstkonto oder OIDC-Token erstellt oder bearbeitet | Das im Profil angegebene Dienstkonto |
| Alle, die eine Integration veröffentlichen oder testen, in der dieses Profil verwendet wird | Das im Profil angegebene Dienstkonto |
Jeder, der eine Integration ausführt, die über dieses Profil eine Aufgabe erreicht. Bei einem asynchronen oder geplanten Lauf ist dies das Run-as-Dienstkonto der Integration oder der Application Integration-Dienst-Agent, service-PROJECT_NUMBER@gcp-sa-integrations.iam.gserviceaccount.com, wenn die Integration kein Run-as-Dienstkonto hat. In diesem Fall ist es besser, ein Dienstkonto für die Ausführung als festzulegen. |
Das im Profil angegebene Dienstkonto |
Zum Speichern eines Entwurfs ist kein Dienstkontonutzer erforderlich. Die Prüfungen für das Veröffentlichen, Testen und Speichern von Authentifizierungsprofilen gelten bereits. Die Prüfungen zum Ausführen, Genehmigen, Aufrufen von Unterintegrationen und Ausführen von Aufgaben, die ein Authentifizierungsprofil verwenden, werden im Laufe der Einführung wirksam. Gewähren Sie daher jetzt für jede Zeile die Berechtigung, damit Ihre Integrationen weiterhin ausgeführt werden können.
Rolle zuweisen
Führen Sie den folgenden Befehl aus, um die Rolle zuzuweisen:
gcloud iam service-accounts add-iam-policy-binding SERVICE_ACCOUNT \
--project=SERVICE_ACCOUNT_PROJECT_ID \
--member='user:PRINCIPAL' \
--role='roles/iam.serviceAccountUser'
Ersetzen Sie Folgendes:
SERVICE_ACCOUNT: die E-Mail-Adresse des Dienstkontos „Ausführen als“ oder des Kontos, das in einem Authentifizierungsprofil angegeben ist.SERVICE_ACCOUNT_PROJECT_ID: die ID des Projekts, zu dem das Dienstkonto gehörtPRINCIPAL: die E-Mail-Adresse des Nutzers
Verwenden Sie für andere Prinzipaltypen das entsprechende --member-Präfix:
- Gruppen:Verwenden Sie
group:. Wir empfehlen, Google-Gruppen anstelle einzelner Nutzerkonten zu verwenden, um die Zugriffsverwaltung zu vereinfachen, wenn sich Teammitglieder ändern. - Dienstkonten:Verwenden Sie
serviceAccount:für automatisierte Prozesse, Anwendungen und Triggerdienstkonten.
So gehen Sie in der Google Cloud Console vor:
- Rufen Sie IAM & Verwaltung > Dienstkonten auf.
- Wählen Sie das Dienstkonto aus.
- Klicken Sie auf Berechtigungen > Zugriff gewähren.
Zum Erteilen der Berechtigung benötigen Sie die Berechtigung roles/iam.serviceAccountAdmin für das Dienstkonto. Nutzer mit der Rolle „Project Owner“ haben diese Berechtigung. Weitere Informationen finden Sie unter Zugriff auf Dienstkonten verwalten.
Nächste Schritte
- Legen Sie ein Dienstkonto für die Ausführung als Dienstkonto fest für Integrationen, die ohne Person ausgeführt werden.
- Wenn eine Erteilung nicht zu funktionieren scheint, lesen Sie den Abschnitt Autorisierungsfehler beheben.