Autorisations Dataproc sans serveur et rôles IAM

La gestion de l'authentification et des accès (IAM) vous permet de contrôler l'accès des utilisateurs et des groupes aux ressources de votre projet. Ce document met l'accent sur les autorisations IAM pertinentes pour Dataproc sans serveur et sur les rôles IAM qui accordent ces autorisations.

Autorisations Dataproc sans serveur

Les autorisations Dataproc sans serveur permettent aux utilisateurs, y compris aux comptes de service, d'effectuer des actions sur les ressources Dataproc sans serveur. Par exemple, l'autorisation dataproc.batches.create vous permet de créer des lots Dataproc sans serveur dans votre projet. Vous n'accordez pas directement des autorisations aux utilisateurs, mais vous leur attribuez des rôles auxquels sont associées une ou plusieurs autorisations.

Les tableaux suivants répertorient les autorisations nécessaires pour appeler les API (méthodes) Dataproc sans serveur. Les tables sont organisées en fonction des API associées à chaque ressource Dataproc sans serveur (lots, sessions, sessionTemplates et opérations). Pour obtenir la liste des autorisations Google Cloud incluses dans chaque rôle, consultez la section Rôles Dataproc.

Champ d'application des autorisations:le champ d'application des autorisations Dataproc sans serveur répertoriées dans les tableaux suivants correspond au projet Google Cloud contenant ces autorisations (champ d'application cloud-platform). Consultez la section Autorisations de compte de service.

Exemples :

  • dataproc.batches.create permet de créer des lots dans le projet associé.
  • dataproc.sessions.create permet de créer une session interactive dans le projet associé.
  • dataproc.operations.list permet de répertorier les détails des opérations Dataproc dans le projet associé.

Autorisations de lot

Méthode Autorisations requises
projects.locations.batches.create dataproc.batches.create 1
projects.locations.batches.delete dataproc.batches.delete
projects.locations.batches.get dataproc.batches.get
projects.locations.batches.list dataproc.batches.list

1 dataproc.batches.create nécessite également les autorisations dataproc.batches.get et dataproc.operations.get pour pouvoir obtenir des mises à jour de l'état à partir de l'outil de ligne de commande gcloud.

Autorisations de session

Méthode Autorisations requises
projects.locations.sessions.create dataproc.sessions.create 1
projects.locations.sessions.delete dataproc.sessions.delete
projects.locations.sessions.get dataproc.sessions.get
projects.locations.sessions.list dataproc.sessions.list
projects.locations.sessions.terminate dataproc.sessions.terminate

1 dataproc.sessions.create nécessite également les autorisations dataproc.sessions.get et dataproc.operations.get pour pouvoir obtenir des mises à jour de l'état à partir de l'outil de ligne de commande gcloud.

Autorisations des modèles d'exécution de session

Méthode Autorisations requises
projects.locations.sessionTemplates.create dataproc.sessionTemplates.create 1
projects.locations.sessionTemplates.delete dataproc.sessionTemplates.delete
projects.locations.sessionTemplates.get dataproc.sessionTemplates.get
projects.locations.sessionTemplates.list dataproc.sessionTemplates.list
projects.locations.sessionTemplates.update dataproc.sessionTemplates.update

1 dataproc.sessionTemplates.create nécessite également les autorisations dataproc.sessionTemplates.get et dataproc.operations.get pour pouvoir obtenir des mises à jour de l'état à partir de l'outil de ligne de commande gcloud.

Autorisations d'opérations

Méthode Autorisations requises
projects.regions.operations.get dataproc.operations.get
projects.regions.operations.list dataproc.operations.list
projects.regions.operations.cancel 1 dataproc.operations.cancel
projects.regions.operations.delete dataproc.operations.delete
projects.regions.operations.getIamPolicy dataproc.operations.getiamPolicy
projects.regions.operations.setIamPolicy dataproc.operations.setiamPolicy

1 Pour annuler les opérations par lot, dataproc.operations.cancel nécessite également l'autorisation dataproc.batches.cancel.

Rôles Dataproc sans serveur

Les rôles IAM Dataproc sans serveur regroupent une ou plusieurs autorisations. Vous accordez des rôles à des utilisateurs ou à des groupes pour leur permettre d'effectuer des actions sur les ressources Dataproc sans serveur dans votre projet. Par exemple, le rôle Lecteur Dataproc comporte les autorisations d'accès et de liste dataproc.batches et dataproc.sessions, qui vous permettent d'obtenir et de répertorier les lots et les sessions Dataproc sans serveur dans un projet.

Le tableau suivant répertorie les rôles IAM Dataproc sans serveur et les autorisations associées à chaque rôle:

ID de rôle Permissions
roles/dataproc.admin dataproc.batches.cancel
dataproc.batches.create
dataproc.batches.delete
dataproc.batches.get
dataproc.batches.list
dataproc.batches.cancel
dataproc.sessions.create
dataproc.sessions.delete
dataproc.sessions.get
dataproc.sessions.list
dataproc.sessions.terminate
dataproc.sessionTemplates.create
dataproc.sessionTemplates.delete
dataproc.sessionTemplates.get
dataproc.sessionTemplates.list
dataproc.sessionTemplates.update
roles/dataproc.editor dataproc.batches.cancel
dataproc.batches.create
dataproc.batches.delete
dataproc.batches.get
dataproc.batches.list
dataproc.sessions.create
dataproc.sessions.delete
dataproc.sessions.get
dataproc.sessions.list
dataproc.sessions.terminate
dataproc.sessionTemplates.create
dataproc.sessionTemplates.delete
dataproc.sessionTemplates.get
dataproc.sessionTemplates.list
dataproc.sessionTemplates.update
roles/dataproc.viewer dataproc.batches.get
dataproc.batches.list
dataproc.sessions.get
dataproc.sessions.list
dataproc.sessionTemplates.get
dataproc.sessionTemplates.list

Rôles au niveau du projet

Il est possible d'obtenir des autorisations au niveau du projet en utilisant les rôles IAM Projet. Voici un aperçu des permissions correspondantes aux rôles de projet IAM.

Rôle de projet Autorisations
Lecteur de projets Toutes les autorisations de projet pour les actions en lecture seule préservant l'état (get, list)
Éditeur de projet Toutes les autorisations lecteur de projet, ainsi que toutes les autorisations de projet pour les actions qui modifient l'état (créer, supprimer, mettre à jour, utiliser, annuler, arrêter, démarrer)
Propriétaire du projet Toutes les autorisations de l'éditeur de projet, ainsi que celles permettant de gérer le contrôle d'accès au projet (get / set IamPolicy) et de configurer la facturation du projet

Rôles personnalisés

Vous pouvez ajouter des autorisations de traitement par lot Dataproc à des rôles personnalisés via la console Google Cloud ou l'outil de ligne de commande gcloud.

Gestion des stratégies IAM

Vous pouvez obtenir et définir des stratégies IAM à l'aide de la console Google Cloud, de l'API IAM ou de l'outil de ligne de commande gcloud.

Étape suivante