Referenz zur Zugriffssteuerung

Cloud Tasks nutzt Identitäts- und Zugriffsverwaltung (Identity and Access Management, IAM) für die Zugriffssteuerung.

Die Zugriffskontrolle kann auf Projekt- und auf Warteschlangenebene konfiguriert werden. Sie können beispielsweise Zugriff mit eingeschränkten Funktionen gewähren, z. B. Aufgaben erstellen und zu einer Warteschlange hinzufügen, die Warteschlange jedoch nicht löschen. Oder Sie können einer Gruppe von Entwicklern Zugriff auf alle Cloud Task-Ressourcen in einem Projekt gewähren.

Eine ausführliche Beschreibung von IAM und den entsprechenden Funktionen finden Sie in der IAM-Dokumentation. Lesen Sie dazu insbesondere den Abschnitt Zugriff für Projektmitglieder gewähren, ändern und aufheben.

Jede Cloud Task-Methode fordert vom Aufrufer bestimmte Berechtigungen. Unten finden Sie eine Liste der unterstützten Berechtigungen und Rollen. Die IAM-Berechtigungen für Cloud Tasks werden auch geprüft, wenn queue.yaml/xml aktualisiert oder die Cloud Console verwendet wird.

Berechtigungen

In der folgenden Tabelle werden die Berechtigungen aufgeführt, die erforderlich sind, um eine bestimmte Methode aufzurufen:

Methode Erforderliche Berechtigungen
ListQueues cloudtasks.queues.list im angegebenen Projekt
GetQueue cloudtasks.queues.get in der angegebenen Warteschlange
CreateQueue cloudtasks.queues.create in der angegebenen Warteschlange
UpdateQueue cloudtasks.queues.update in der angegebenen Warteschlange
PurgeQueue cloudtasks.queues.purge in der angegebenen Warteschlange
DeleteQueue cloudtasks.queues.delete in der angegebenen Warteschlange
PauseQueue cloudtasks.queues.pause in der angegebenen Warteschlange
ResumeQueue cloudtasks.queues.resume in der angegebenen Warteschlange
GetIamPolicy cloudtasks.queues.getIamPolicy in der angegebenen Warteschlange
SetIamPolicy cloudtasks.queues.setIamPolicy in der angegebenen Warteschlange
ListTasks cloudtasks.tasks.list in der angegebenen Warteschlange
GetTask cloudtasks.tasks.get in der angegebenen Warteschlange
CreateTask cloudtasks.tasks.create in der angegebenen Warteschlange
DeleteTask cloudtasks.tasks.delete in der angegebenen Warteschlange
RunTask cloudtasks.tasks.run in der angegebenen Aufgabe
ListLocations cloudtasks.locations.list im angegebenen Projekt
GetLocation cloudtasks.locations.get im angegebenen Projekt

Rollen

In der folgenden Tabelle sind die Cloud Tasks-IAM-Rollen und die jeweiligen Berechtigungen der Rollen aufgeführt. Beachten Sie, dass jede Berechtigung für einen bestimmten Ressourcentyp gilt.

Rolle Enthaltene Berechtigungen:
roles/cloudtasks.admin cloudtasks.locations.list
cloudtasks.locations.get

cloudtasks.queues.list
cloudtasks.queues.get
cloudtasks.queues.create
cloudtasks.queues.update
cloudtasks.queues.purge
cloudtasks.queues.delete
cloudtasks.queues.pause
cloudtasks.queues.resume
cloudtasks.queues.getIamPolicy
cloudtasks.queues.setIamPolicy

cloudtasks.tasks.list
cloudtasks.tasks.get
cloudtasks.tasks.create
cloudtasks.tasks.delete
cloudtasks.tasks.run
cloudtasks.tasks.fullView

resourcemanager.projects.get
resourcemanager.projects.list
roles/cloudtasks.queueAdmin cloudtasks.locations.list
cloudtasks.locations.get

cloudtasks.queues.list
cloudtasks.queues.get
cloudtasks.queues.create
cloudtasks.queues.update
cloudtasks.queues.purge
cloudtasks.queues.delete
cloudtasks.queues.pause
cloudtasks.queues.resume
cloudtasks.queues.getIamPolicy
cloudtasks.queues.setIamPolicy

resourcemanager.projects.get
resourcemanager.projects.list
roles/cloudtasks.viewer cloudtasks.locations.list
cloudtasks.locations.get

cloudtasks.queues.list
cloudtasks.queues.get

cloudtasks.tasks.list
cloudtasks.tasks.get
cloudtasks.tasks.fullView

resourcemanager.projects.get
resourcemanager.projects.list
roles/cloudtasks.enqueuer cloudtasks.tasks.create
cloudtasks.tasks.fullView

resourcemanager.projects.get
resourcemanager.projects.list
roles/cloudtasks.taskRunner cloudtasks.tasks.run
cloudtasks.tasks.fullView

resourcemanager.projects.get
resourcemanager.projects.list
roles/cloudtasks.taskDeleter cloudtasks.tasks.delete

resourcemanager.projects.get
resourcemanager.projects.list