Un traitement par lots exécute un fichier SQL via l'interface de ligne de commande bq et transmet la sortie à un autre processus, mais l'interface de ligne de commande bq signale une erreur d'autorisation. Comment corrigez-vous les autorisations du compte de service afin que l'interface de ligne de commande puisse exécuter des requêtes ?
Choisissez une réponse
Appuyez sur une option pour vérifier votre réponse.
Bonne réponse : Accorder les rôles BigQuery Data Viewer et BigQuery Job User au compte de service..
Pourquoi c'est la réponse
Pour exécuter des requêtes BigQuery via l'interface de ligne de commande bq, le compte de service a besoin de deux rôles principaux. Le rôle BigQuery Data Viewer (roles/bigquery.dataViewer) permet de lire les données des tables, ce qui est essentiel pour toute requête. Le rôle BigQuery Job User (roles/bigquery.jobUser) permet de créer et d'exécuter des jobs BigQuery, y compris les requêtes. Sans ce dernier rôle, le compte de service ne peut pas initier le processus de requête, d'où l'erreur d'autorisation. Accorder les rôles BigQuery Data Editor et BigQuery Data Viewer n'est pas idéal car Data Editor (roles/bigquery.dataEditor) donne des permissions d'écriture et de modification des données, ce qui est excessif si le processus ne fait que lire et exécuter des requêtes. Créer une vue ou copier la table source ne résout pas le problème sous-jacent des autorisations du compte de service pour exécuter des jobs BigQuery.
Réussissez votre examen — sans la chasse aux réponses interminable
Obtenez toutes les questions et explications vérifiées pour cet examen en un seul endroit, et économisez des heures de préparation. Plus de 1 000 certifications · Plus de 20 langues · Gratuit pour commencer.
Réussissez votre examen plus rapidement → Pas de carte requise