Rôles et autorisations de base

Présentation

BigQuery est compatible avec les rôles de base d'IAM pour un accès au niveau du projet.

Rôles de base pour les projets

Par défaut, autoriser l'accès à un projet permet également d'accéder aux ensembles de données qu'il contient. L'accès par défaut peut être ignoré pour chaque ensemble de données. Le tableau suivant décrit les accès accordés aux membres des rôles IAM de base.

Rôle de base Fonctions
Viewer
  • Peut démarrer une tâche dans le projet. Des rôles supplémentaires pour les ensembles de données peuvent être nécessaires en fonction du type de tâche.
  • Peut répertorier et obtenir toutes les tâches, et mettre à jour celles qui ont été démarrées pour le projet.
  • Si vous créez un ensemble de données dans un projet pour lequel des lecteurs sont définis, BigQuery attribue à ces utilisateurs le rôle prédéfini bigquery.dataViewer dans le nouvel ensemble de données.
Editor
  • Compétences identiques à celles de Viewer, plus les suivantes :
    • Peut créer un ensemble de données dans le projet.
    • Si vous créez un ensemble de données dans un projet pour lequel des éditeurs sont définis, BigQuery attribue à ces utilisateurs le rôle prédéfini bigquery.dataEditor dans le nouvel ensemble de données.
Owner
  • Compétences identiques à celles de Editor, plus les suivantes :
    • Peut révoquer ou modifier n'importe quel rôle de projet
    • Peut répertorier tous les ensembles de données du projet.
    • Peut supprimer n'importe quel ensemble de données du projet.
    • Peut répertorier et obtenir toutes les tâches exécutées dans le projet, y compris celles qui sont exécutées par d'autres utilisateurs du projet.
    • Si vous créez un ensemble de données, BigQuery attribue à tous les propriétaires de projets le rôle prédéfini bigquery.dataOwner dans le nouvel ensemble de données.

      Exception : Lorsqu'un utilisateur exécute une requête, un ensemble de données anonyme est créé pour stocker la table des résultats mis en cache. Seul l'utilisateur qui exécute la requête peut avoir l'accès OWNER à l'ensemble de données anonyme.

Les rôles de base des projets sont accordés ou révoqués via Google Cloud Console. Lorsqu'un projet est créé, le rôle Owner est attribué à l'utilisateur qui a créé le projet.

Pour découvrir comment accorder ou révoquer l'accès des rôles de projet, consultez la page Accorder, modifier et révoquer les accès à des ressources dans la documentation IAM.

Rôles de base pour les ensembles de données

Les rôles primitifs suivants s'appliquent au niveau de l'ensemble de données.

Rôle de l'ensemble de données Fonctions
READER
  • Peut lire, interroger, copier ou exporter des tables dans l'ensemble de données. Peut également lire des routines dans l'ensemble de données.
    • Peut appeler get sur l'ensemble de données
    • Peut appeler get et list sur les tables de l'ensemble de données
    • Peut appeler get et list sur les routines de l'ensemble de données
    • Peut appeler list sur les données des tables de l'ensemble de données
WRITER
  • Compétences identiques à celles de READER, plus les suivantes :
    • Peut modifier ou ajouter des données dans l'ensemble de données
      • Peut appeler insert, insertAll, update ou delete sur les tables
      • Peut utiliser des tables de l'ensemble de données comme destinations pour les tâches de chargement, de copie ou de requête
      • Peut appeler insert, update ou delete sur les routines
OWNER
  • Compétences identiques à celles de WRITER, plus les suivantes :
    • Peut appeler update sur l'ensemble de données
    • Peut appeler delete sur l'ensemble de données

Remarque : Un ensemble de données doit être associé à une entité (au minimum) disposant du rôle OWNER. Un utilisateur qui dispose du rôle OWNER ne peut pas supprimer son propre rôle OWNER.

Pour en savoir plus sur l'attribution de rôles au niveau de l'ensemble de données, consultez la page Contrôler l'accès aux ensembles de données.

Lorsque vous créez un ensemble de données, BigQuery ajoute un accès par défaut à l'ensemble de données pour les entités suivantes. Les rôles que vous spécifiez lors de la création de l'ensemble de données écrasent les valeurs par défaut.

Entité Rôle de l'ensemble de données
Tous les utilisateurs disposant de l'accès Viewer au projet READER
Tous les utilisateurs disposant de l'accès Editor au projet WRITER
Tous les utilisateurs disposant de l'accès Owner au projet
et le créateur de l'ensemble de données

OWNER

Exception : Lorsqu'un utilisateur exécute une requête, un ensemble de données anonyme est créé pour stocker la table des résultats mis en cache. Seul l'utilisateur qui exécute la requête peut avoir l'accès OWNER à l'ensemble de données anonyme.