Zugriffssteuerung

Auf dieser Seite werden die Zugriffssteuerungsoptionen beschrieben, die Ihnen in der Cloud Composer API zur Verfügung stehen.

Übersicht

Die Cloud Composer API verwendet die Identitäts- und Zugriffsverwaltung (IAM) für die Zugriffssteuerung.

In der Cloud Composer API kann die Zugriffssteuerung auf Projektebene konfiguriert werden. So haben Sie beispielsweise die Möglichkeit, einer Gruppe von Entwicklern Zugriff auf alle Ressourcen der Cloud Composer API innerhalb eines Projekts zu gewähren.

Eine ausführliche Beschreibung von IAM und den entsprechenden Funktionen finden Sie in der IAM-Dokumentation. Lesen Sie insbesondere den Abschnitt IAM-Richtlinien verwalten.

Zum Aufrufen der Methoden in der Cloud Composer API werden die erforderlichen Berechtigungen benötigt. Weitere Informationen finden Sie unter Berechtigungen und Rollen.

Erforderliche Berechtigung

In der folgenden Tabelle sind die Berechtigungen aufgeführt, die erforderlich sind, um die einzelnen Methoden in der Cloud Composer API aufrufen oder um Aufgaben mit Google Cloud-Tools ausführen zu können, die die API verwenden (z. B. die Google Cloud Console oder das Cloud SDK).

Methode Permission
environments.create composer.environments.create
iam.serviceAccounts.actAs (für das Dienstkonto, in dem die Umgebung ausgeführt wird)
environments.delete composer.environments.delete
environments.get composer.environments.get
environments.list composer.environments.list
environments.update composer.environments.update
operations.delete composer.operations.delete
operations.get composer.operations.get
operations.list composer.operations.list

Rollen

Rolle Titel Beschreibung Berechtigungen Niedrigste Ressource
roles/composer.admin Composer-Administrator Bietet uneingeschränkte Kontrolle über Cloud Composer-Ressourcen.
  • composer.*
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
Projekt
roles/composer.environmentAndStorageObjectAdmin Administrator für Umgebung und Storage-Objekte Bietet uneingeschränkte Kontrolle über Cloud Composer-Ressourcen und die Objekte in allen Projekt-Buckets.
  • composer.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
  • storage.objects.*
Projekt
roles/composer.environmentAndStorageObjectViewer Umgebungsnutzer und Betrachter von Storage-Objekten Bietet die Berechtigung zum Auflisten und Abrufen von Cloud Composer-Umgebungen und -Vorgängen. Bietet Lesezugriff auf Objekte in allen Projekt-Buckets.
  • composer.environments.get
  • composer.environments.list
  • composer.imageversions.*
  • composer.operations.get
  • composer.operations.list
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
  • storage.objects.get
  • storage.objects.list
Projekt
roles/composer.user Composer-Nutzer Berechtigung zum Auflisten und Abrufen von Cloud Composer-Umgebungen und -Vorgängen.
  • composer.environments.get
  • composer.environments.list
  • composer.imageversions.*
  • composer.operations.get
  • composer.operations.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
Projekt
roles/composer.worker Composer-Worker Berechtigung zum Ausführen einer VM in einer Cloud Composer-Umgebung. Für Dienstkonten bestimmt.
  • artifactregistry.*
  • cloudbuild.*
  • container.*
  • containeranalysis.occurrences.create
  • containeranalysis.occurrences.delete
  • containeranalysis.occurrences.get
  • containeranalysis.occurrences.list
  • containeranalysis.occurrences.update
  • logging.logEntries.create
  • monitoring.metricDescriptors.create
  • monitoring.metricDescriptors.get
  • monitoring.metricDescriptors.list
  • monitoring.monitoredResourceDescriptors.*
  • monitoring.timeSeries.*
  • pubsub.snapshots.create
  • pubsub.snapshots.delete
  • pubsub.snapshots.get
  • pubsub.snapshots.list
  • pubsub.snapshots.seek
  • pubsub.snapshots.update
  • pubsub.subscriptions.consume
  • pubsub.subscriptions.create
  • pubsub.subscriptions.delete
  • pubsub.subscriptions.get
  • pubsub.subscriptions.list
  • pubsub.subscriptions.update
  • pubsub.topics.attachSubscription
  • pubsub.topics.create
  • pubsub.topics.delete
  • pubsub.topics.detachSubscription
  • pubsub.topics.get
  • pubsub.topics.list
  • pubsub.topics.publish
  • pubsub.topics.update
  • pubsub.topics.updateTag
  • remotebuildexecution.blobs.get
  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • serviceusage.quotas.get
  • serviceusage.services.get
  • serviceusage.services.list
  • source.repos.get
  • source.repos.list
  • storage.buckets.create
  • storage.buckets.get
  • storage.buckets.list
  • storage.objects.*
Projekt

Einfache Rollen

Rolle Titel Beschreibung Berechtigungen Niedrigste Ressource
roles/owner Inhaber Einfache Rolle, die die vollständige Kontrolle über Cloud Composer-Ressourcen ermöglicht. composer.operations.list
composer.operations.get
composer.operations.delete
composer.environments.list
composer.environments.get
composer.environments.delete
composer.environments.update
composer.environments.create
iam.serviceAccounts.actAs
Projekt
roles/editor Editor Einfache Rolle, die die vollständige Kontrolle über Cloud Composer-Ressourcen ermöglicht. composer.operations.list
composer.operations.get
composer.operations.delete
composer.environments.list
composer.environments.get
composer.environments.delete
composer.environments.update
composer.environments.create
iam.serviceAccounts.actAs
Projekt
roles/reader Betrachter Einfache Rolle, mit der Nutzer Cloud Composer-Ressourcen auflisten und abrufen können. composer.operations.list
composer.operations.get
composer.environments.list
composer.environments.get
Projekt

Berechtigungen für allgemeine Aufgaben

Rollen sind eine Sammlung von Berechtigungen. In diesem Abschnitt werden die Rollen oder Berechtigungen aufgeführt, die für allgemeine Aufgaben erforderlich sind.

Aufgabe Berechtigungen und/oder Rollen
Auf die IAP-geschützte Airflow-Weboberfläche zugreifen composer.environments.get
Airflow-Befehlszeile mit dem gcloud-Befehlszeilentool ausführen composer.environments.get
container.clusters.getCredentials
roles/container.developer
Seite "Umgebungen" in der Cloud Console aufrufen composer.environments.list
servicemanagement.projectSettings.get
Logs und Messwerte der Operations Suite von Google Cloud aufrufen roles/logging.viewer
roles/monitoring.viewer
Umgebung erstellen composer.environments.create
iam.serviceAccounts.actAs (für das Dienstkonto, in dem die Umgebung ausgeführt wird)
Umgebung aktualisieren und löschen, einschließlich Festlegen von Umgebungsvariablen und Installieren/Aktualisieren von Python-Paketen environments.delete
environments.update
Dateien in die Ordner der DAGs und Plug-ins hochladen und auf die Airflow-Logs im Ordner "Logs" zugreifen storage.objectAdmin auf Bucket- oder Projektebene zugewiesen

composer.environments.get für das Abrufen des DAG-Ziel-Buckets

Zugriffssteuerung über gcloud

Zum Zuweisen vordefinierter Rollen führen Sie den Befehl gcloud projects get-iam-policy aus, um die aktuelle Richtlinie abzurufen. Aktualisieren Sie dann die Richtlinie und verknüpfen Sie sie dazu mit der Rolle (roles/composer.admin) Composer-Administrator oder mit der Rolle (roles/composer.user) Composer-Nutzer. Anschließend führen Sie den Befehl gcloud projects set-iam-policy aus. Weitere Informationen zum Zuweisen von Rollen mithilfe von gcloud finden Sie in der IAM-Dokumentation auf der Seite Zugriff auf Ressourcen erteilen, ändern und entziehen.

Zum Konfigurieren einer benutzerdefinierten Rolle mit Cloud Composer-Berechtigungen führen Sie den Befehl gcloud iam roles create aus, einschließlich der Liste der gewünschten Berechtigungen aus der Tabelle mit vordefinierten Rollen. Aktualisieren Sie anschließend die IAM-Richtlinie mit der neu konfigurierten benutzerdefinierten Rolle. Weitere Informationen finden Sie in der IAM-Dokumentation auf der Seite Benutzerdefinierte Rolle erstellen.

Zugriffssteuerung über die Cloud Console

Mit der Cloud Console können Sie die Zugriffssteuerung für Ihre Umgebungen und Projekte verwalten.

So legen Sie die Zugriffssteuerung auf Projektebene fest:

  1. Rufen Sie in der Google Cloud Console die Seite "IAM" auf.
  2. Wählen Sie Ihr Projekt aus und klicken Sie auf Weiter.
  3. Klicken Sie auf Mitglied hinzufügen.
  4. Geben Sie die E-Mail-Adresse eines neuen Mitglieds ein, dem Sie noch keine IAM-Rolle zugewiesen haben.
  5. Wählen Sie die gewünschte Rolle im Drop-down-Menü aus.
  6. Klicken Sie auf Hinzufügen.
  7. Prüfen Sie, ob das Mitglied unter der von Ihnen zugewiesenen Rolle aufgelistet ist.