Documentation de référence sur le contrôle des accès

Cloud Tasks utilise Identity and Access Management (IAM) pour effectuer le contrôle des accès.

Le contrôle des accès peut être configuré au niveau du projet et au niveau de la file d'attente. Par exemple, vous pouvez accorder un accès avec des fonctionnalités restreintes, permettant de créer et d'ajouter des tâches à une file d'attente, mais pas de supprimer cette dernière. Vous pouvez également accorder à un groupe de développeurs l'accès à toutes les ressources Cloud Tasks au sein d'un projet.

Pour une description détaillée d'IAM et de ses fonctionnalités, consultez la documentation IAM. Accordez une attention particulière à la section Attribuer, modifier et révoquer les accès des membres du projet.

Quelle que soit la méthode Cloud Tasks employée, l'appelant doit disposer des autorisations requises. Vous trouverez ci-dessous la liste des autorisations et des rôles disponibles. Les autorisations IAM de Cloud Tasks sont également vérifiées en cas de mise à jour du fichier queue.yaml/xml et/ou d'utilisation de Cloud Console.

Autorisations

Le tableau suivant répertorie les autorisations dont l'appelant doit disposer pour appeler chaque méthode :

Méthode Autorisations requises
ListQueues cloudtasks.queues.list sur le projet spécifié
GetQueue cloudtasks.queues.get sur la file d'attente spécifiée
CreateQueue cloudtasks.queues.create sur la file d'attente spécifiée
UpdateQueue cloudtasks.queues.update sur la file d'attente spécifiée
PurgeQueue cloudtasks.queues.purge sur la file d'attente spécifiée
DeleteQueue cloudtasks.queues.delete sur la file d'attente spécifiée
PauseQueue cloudtasks.queues.pause sur la file d'attente spécifiée
ResumeQueue cloudtasks.queues.resume sur la file d'attente spécifiée
GetIamPolicy cloudtasks.queues.getIamPolicy sur la file d'attente spécifiée
SetIamPolicy cloudtasks.queues.setIamPolicy sur la file d'attente spécifiée
ListTasks cloudtasks.tasks.list sur la file d'attente spécifiée
GetTask cloudtasks.tasks.get sur la file d'attente spécifiée
CreateTask cloudtasks.tasks.create sur la file d'attente spécifiée
DeleteTask cloudtasks.tasks.delete sur la file d'attente spécifiée
RunTask cloudtasks.tasks.run sur la tâche spécifiée
ListLocations cloudtasks.locations.list sur le projet spécifié
GetLocation cloudtasks.locations.get sur le projet spécifié

Rôles

Le tableau suivant répertorie les rôles IAM pour Cloud Tasks, ainsi que la liste de toutes les autorisations incluses dans chaque rôle. Notez que chaque autorisation est applicable à un type de ressource particulier.

Rôle Autorisation(s) associée(s) :
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