Auf dieser Seite werden Cloud Deploy-Dienstkonten, -Rollen und -Berechtigungen beschrieben.
Der Zugriff in Cloud Deploy wird mithilfe der Identitäts- und Zugriffsverwaltung (IAM) gesteuert. Mit IAM können Sie Berechtigungen für Google Cloud-Ressourcen erstellen und verwalten. Cloud Deploy bietet eine spezifische vordefinierte IAM-Rollen wobei jede Rolle eine Reihe von Berechtigungen enthält. Mit diesen Rollen können Sie detaillierteren Zugriff auf bestimmte Google Cloud-Ressourcen gewähren und unerwünschten Zugriff auf andere Ressourcen verhindern. Durch IAM haben Sie die Möglichkeit, das Prinzip der geringsten Berechtigung anzuwenden und somit nur den notwendigen Zugriff auf Ihre Ressourcen zu gewähren.
Unter Zugriff auf Cloud Deploy mit IAM einschränken finden Sie Informationen zu erweiterten Sicherheitsfunktionen für die Zugriffssteuerung.
Dienstkonten in Cloud Deploy
Standardmäßig wird Cloud Deploy mit der Compute Engine-Standardversion ausgeführt Dienstkonto. Dieses Dienstkonto hat ausreichende Berechtigungen zum Rendern Manifest erstellen und für Ihre Ziele bereitstellen.
Weitere Informationen Cloud Deploy verwendet Dienstkonten.
Vordefinierte Cloud Deploy-Rollen
Mit IAM benötigt jede API-Methode in der Cloud Deploy API dass die Identität, die die API-Anfrage stellt, über die entsprechenden Berechtigungen verfügt, der Ressource. Berechtigungen werden durch Festlegen von Richtlinien erteilt, die einem Hauptkonto (Nutzer, Gruppe oder Dienstkonto) Ihres Projekts Rollen zuweisen. Sie können einem Hauptkonto mehrere Rollen für dieselbe Ressource zuweisen.
Die IAM-Dokumentation enthält ein durchsuchbare Referenz von allen vordefinierten Rollen.
In der folgenden Tabelle sind die IAM-Rollen und die darin enthaltenen Berechtigungen:
Cloud Deployment-Rollen |
Berechtigungen |
Cloud Deploy-Administrator( Vollständige Kontrolle über Cloud Deploy-Ressourcen. |
|
Cloud Deploy-Genehmiger( Berechtigung zum Genehmigen oder Ablehnen von Rollouts. |
|
Cloud Deploy Custom Target Type Admin( Berechtigung zum Verwalten von CustomTargetType-Ressourcen |
|
Cloud Deploy-Entwickler( Berechtigung zum Verwalten der Bereitstellungskonfiguration ohne Berechtigung für den Zugriff auf Betriebsressourcen wie Ziele. |
|
Ausführer von Cloud Deploy( Berechtigung zum Ausführen von Cloud Deploy-Arbeiten ohne Berechtigung zum Senden an ein Ziel. |
|
Cloud Deploy-Operator( Berechtigung zum Verwalten der Bereitstellungskonfiguration. |
|
Cloud Deploy Policy Admin Beta( Berechtigung zum Verwalten von Bereitstellungsrichtlinien. |
|
Cloud Deploy-Richtlinienüberschreiber Beta( Berechtigung zum Überschreiben von Bereitstellungsrichtlinien. |
|
Cloud Deploy-Veröffentlicher( Berechtigung zum Erstellen von Cloud Deploy-Releases und -Rollouts. |
|
Cloud Deploy-Betrachter( Kann Cloud Deploy-Ressourcen aufrufen. |
|
Zusätzlich zu den vordefinierten Cloud Deploy-Rollen enthält das Feld basic-Betrachter Die Rollen „Bearbeiter“ und „Inhaber“ enthalten auch Berechtigungen für Cloud Deploy. Es empfiehlt sich jedoch, wenn möglich vordefinierte Rollen zuzuweisen, um das Sicherheitsprinzip der geringsten Berechtigung zu einhalten.
Berechtigungen
In der folgenden Tabelle werden die Berechtigungen aufgeführt, die erforderlich sind, um eine bestimmte Methode aufzurufen:
API-Methode | Erforderliche Berechtigung | Beschreibung |
---|---|---|
automations.create() |
clouddeploy.automations.create |
Erstellen Sie eine neue Automatisierungsressource. |
automations.delete() |
clouddeploy.automations.delete |
Löschen Sie eine vorhandene Automatisierungsressource. |
automations.get() |
clouddeploy.automations.get |
Details für eine einzelne Automatisierungsressource abrufen. |
automations.list() |
clouddeploy.automations.list |
Automatisierungsressourcen und ihre Metadaten auflisten |
automations.update() |
clouddeploy.automations.update |
Vorhandene Automatisierungsressource aktualisieren |
automationRuns.cancel() |
clouddeploy.automationRuns.cancel |
Laufende Automatisierung abbrechen. |
automationRuns.get() |
clouddeploy.automationRuns.get |
Details zu einer einzelnen Automatisierungsausführung abrufen. |
automationRuns.list() |
clouddeploy.automationRuns.list |
Automatisierungsausführungen und deren Metadaten auflisten. |
customTargetTypes.create() |
clouddeploy.customTargetTypes.create |
Erstellen Sie eine benutzerdefinierte Zieltypressource. |
customTargetTypes.delete() |
clouddeploy.customTargetTypes.delete |
Löschen Sie eine Ressource vom benutzerdefinierten Zieltyp. |
customTargetTypes.get() |
clouddeploy.customTargetTypes.get |
Rufen Sie Details zu einem benutzerdefinierten Zieltyp ab. |
customTargetTypes.getIamPolicy() |
clouddeploy.customTargetTypes.getIamPolicy |
Rufen Sie die IAM-Richtlinie für eine benutzerdefinierte Zieltypressource ab. |
customTargetTypes.list() |
clouddeploy.customTargetTypes.list |
Listen Sie die verfügbaren benutzerdefinierten Zieltypen und die zugehörigen Metadaten auf. |
customTargetTypes.patch() |
clouddeploy.customTargetTypes.patch |
Vorhandenen benutzerdefinierten Zieltyp aktualisieren |
customTargetTypes.setIamPolicy() |
clouddeploy.customTargetTypes.setIamPolicy |
Legen Sie die IAM-Richtlinie für eine Ressource mit benutzerdefiniertem Zieltyp fest. |
deliveryPipelines.create() |
clouddeploy.deliveryPipelines.create |
Erstellen Sie eine neue Lieferpipeline-Ressource. |
deliveryPipelines.delete() |
clouddeploy.deliveryPipelines.delete |
Löschen Sie eine vorhandene Lieferpipeline-Ressource. |
deliveryPipelines.get() |
clouddeploy.deliveryPipelines.get |
Rufen Sie Details zu einer einzelnen Lieferpipeline ab. |
deliveryPipelines.getIamPolicy() |
clouddeploy.deliveryPipelines.getIamPolicy |
Rufen Sie die IAM-Richtlinie für eine Lieferpipeline-Ressource ab. |
deliveryPipelines.list() |
clouddeploy.deliveryPipelines.list |
Bereitstellungspipelines und deren Metadaten auflisten |
deliveryPipelines.rollbackTarget() |
clouddeploy.rollouts.rollback |
Führt ein Rollback für ein Ziel durch. |
deliveryPipelines.setIamPolicy() |
clouddeploy.deliveryPipelines.setIamPolicy |
Legen Sie die IAM-Richtlinie für eine Lieferpipeline-Ressource fest. |
deliveryPipelines.update() |
clouddeploy.deliveryPipelines.update |
Aktualisieren Sie vorhandene Lieferpipeline-Ressourcen. |
jobRuns.get() |
clouddeploy.jobRuns.get |
Rufen Sie eine JobRuns -Ressource ab. |
jobRuns.list() |
clouddeploy.jobRuns.list |
JobRuns -Ressourcen und ihre Metadaten auflisten |
jobRuns.terminate() |
clouddeploy.jobRuns.terminate |
Beenden Sie eine laufende Jobausführung. |
operations.cancel() |
clouddeploy.operations.cancel |
Lange laufenden Vorgang abbrechen. |
operation.delete() |
clouddeploy.operations.delete |
Lange laufenden Vorgang löschen. |
operations.get() |
clouddeploy.operations.get |
Einen bestimmten Vorgang mit langer Ausführungszeit abrufen (z. B. um den Status der Erstellung eines Releases zurückzugeben). |
operations.list() |
clouddeploy.operations.list |
Lange laufende Vorgänge auflisten. |
releases.abandon() |
clouddeploy.releases.abandon |
Einen Release verwerfen und weitere Roll-outs für den Release verhindern. |
releases.create() |
clouddeploy.releases.create |
Erstellen einer neuen Releaseressource. Der Aufrufer benötigt außerdem die iam.serviceAccounts.actAs -Berechtigung für das Dienstkonto, das zum Rendern des Manifests verwendet wird. |
releases.get() |
clouddeploy.releases.get |
Details zu einzelnen Releases abrufen. |
releases.list() |
clouddeploy.releases.list |
Releases und Metadaten auflisten. |
releases.promote() |
clouddeploy.rollouts.create |
Release zum nächsten Ziel hochstufen. |
rollouts.advance() |
clouddeploy.rollouts.advance |
Fahren Sie mit einem Roll-out in der nächsten Phase fort. |
rollouts.approve() |
clouddeploy.rollouts.approve |
Genehmigen oder lehnen Sie ein Roll-out mit dem Genehmigungsstatus required ab. |
rollouts.cancel() |
clouddeploy.rollouts.cancel |
Roll-out abbrechen. |
rollouts.create() |
clouddeploy.rollouts.create |
Erstellen Sie eine neue Roll-out-Ressource. Der Aufrufer benötigt außerdem die Berechtigung iam.serviceAccounts.actAs für das Projekt oder Dienstkonto, das für die Bereitstellung verwendet wird. |
rollouts.get() |
clouddeploy.rollouts.get |
Details für einzelne Roll-outs abrufen. |
rollouts.ignoreJob() |
clouddeploy.rollouts.ignoreJob |
Einen fehlgeschlagenen Job ignorieren. |
rollouts.list() |
clouddeploy.rollouts.list |
Roll-outs und Metadaten auflisten. |
rollouts.retryJob() |
clouddeploy.rollouts.retryJob |
Fehlgeschlagener Job wird wiederholt. |
targets.create() |
clouddeploy.targets.create |
Erstellen einer neuen Zielressource. |
targets.delete() |
clouddeploy.targets.delete |
Vorhandene Zielressource löschen. |
targets.get() |
clouddeploy.targets.get |
Details für ein einzelnes Ziel abrufen. |
targets.getIamPolicy() |
clouddeploy.targets.getIamPolicy |
Ruft die IAM-Richtlinie für eine Zielressource ab. |
targets.list() |
clouddeploy.targets.list |
Ziele und ihre Metadaten auflisten. |
targets.setIamPolicy() |
clouddeploy.targets.setIamPolicy |
Legt die IAM-Richtlinie für eine Zielressource fest. |
targets.update() |
clouddeploy.targets.update |
Vorhandene Zielressource aktualisieren. |
Aktionen mit Cloud Deploy-Ressourcen mit IAM einschränken
Sie können Ihre Cloud Deploy-Ressourcen mit IAM sichern auf folgende Arten:
IAM-Meta-APIs
setIamPolicy
verwenden für Cloud Deploy-Ressourcen, um Aktionen für diese Ressourcen einzuschränken.Bedingte IAM-Richtlinien
Wenden Sie Zugriffsrichtlinien programmatisch an, einschließlich der Bedingungen, unter denen Sie Zugriff gewähren oder verweigern.
Mit diesen Richtlinien und Bedingungen können Sie folgende Aktionen für Ihre Cloud Deploy-Ressourcen einschränken:
Lieferpipeline oder -ziel erstellen
Sie können diesen Zugriff bestimmten Nutzern oder Gruppen gewähren.
Bestimmte Lieferpipeline aktualisieren oder löschen
Sie können diesen Zugriff bestimmten Nutzern oder Gruppen gewähren.
Release für eine bestimmte Lieferpipeline erstellen
Sie können diesen Zugriff bestimmten Nutzern oder Gruppen gewähren.
Ein bestimmtes Ziel aktualisieren oder löschen
Sie können diesen Zugriff bestimmten Nutzern oder Gruppen gewähren.
Rollout erstellen, genehmigen oder hochstufen
Sie können diesen Zugriff für bestimmte Nutzer oder Gruppen für eine bestimmte Ziel- oder Lieferpipeline gewähren.
Sie können auch eine Bedingung festlegen, die diesen Zugriff auf einen bestimmten Zeitfenster.
Nächste Schritte
- IAM
- Weitere Informationen zur Verwendung von Bedingungen in IAM
- Weitere Informationen zu Cloud Deploy-Dienstkonten