Activer le service de transfert de données BigQuery

Pour utiliser le service de transfert de données BigQuery, vous devez procéder comme suit en tant que propriétaire de projet :

  • Créer un projet et activer l'API BigQuery
  • Activer le service de transfert de données BigQuery

Pour en savoir plus sur les rôles de gestion de l'authentification et des accès (IAM), consultez la section Comprendre les rôles dans la documentation IAM.

Créer un projet et activer l'API BigQuery

Avant d'utiliser le service de transfert de données BigQuery, vous devez créer un projet et, dans la plupart des cas, activer la facturation pour ce projet. Vous pouvez utiliser un projet existant avec le service de transfert de données BigQuery ou en créer un nouveau. Si vous utilisez un projet existant, vous devrez peut-être également activer l'API BigQuery.

Pour créer un projet et activer l'API BigQuery :

  1. Dans Google Cloud Console, accédez à la page de sélection du projet.

    Accéder au sélecteur de projet

  2. Sélectionnez ou créez un projet Google Cloud.

  3. Activez la facturation dans votre projet pour tous les transferts. Les transferts gratuits vous sont facturés 0 $.

    L'activation de la facturation est requise une seule fois par projet, même si vous transférez des données à partir de plusieurs sources. La facturation doit également être activée pour interroger les données dans BigQuery, une fois qu'elles sont transférées.

    Découvrez comment vérifier que la facturation est activée dans votre projet.

  4. BigQuery est automatiquement activé dans les nouveaux projets. Pour activer BigQuery dans un projet existant, vous devez activer l'API BigQuery.

    Activer l'API BigQuery

Activer le service de transfert de données BigQuery

Avant de pouvoir créer un transfert, vous devez activer le service de transfert de données BigQuery. Pour activer le service de transfert de données BigQuery, vous devez posséder le rôle de propriétaire pour votre projet.

Pour activer le service de transfert de données BigQuery :

  1. Ouvrez la page API BigQuery Data Transfer dans la bibliothèque d'API.

  2. Dans le menu déroulant, sélectionnez le projet approprié

  3. Cliquez sur le bouton ACTIVER.

    Activer l'API Data Transfer

Agent de service

Le service de transfert de données BigQuery utilise un compte de service géré par Google appelé agent de service pour accéder à vos ressources et les gérer. Cela inclut, sans s'y limiter, les ressources suivantes :

  • La récupération d'un jeton d'accès pour le compte de service à utiliser lors de l'autorisation du transfert de données.
  • La publication des notifications sur le sujet Pub/Sub fourni si cette fonctionnalité est activée.
  • Le démarrage des tâches BigQuery.

L'agent de service est créé automatiquement en votre nom la première fois que vous utilisez l'API après avoir activé le service de transfert de données BigQuery. Lors de la création de l'agent de service, Google attribue automatiquement le rôle d'agent de service prédéfini.

Autorisation des comptes de service multiprojets

Si vous autorisez le transfert de données à l'aide d'un compte de service d'un projet différent du projet avec le service de transfert de données BigQuery activé, vous devez attribuer le rôle roles/iam.serviceAccountTokenCreator à l'agent de service en utilisant la commande suivante de Google Cloud CLI :

gcloud iam service-accounts add-iam-policy-binding service_account \
--member serviceAccount:service-project_number@gcp-sa-bigquerydatatransfer.iam.gserviceaccount.com \
--role roles/iam.serviceAccountTokenCreator

Où :

  • service_account correspond au compte de service multiprojet utilisé pour autoriser le transfert de données.
  • project_number est le numéro du projet dans lequel le service de transfert de données BigQuery est activé.

Pour en savoir plus sur la configuration des ressources multiprojets, consultez la section Configurer une ressource dans un autre projet de la documentation sur l'emprunt d'identité du compte de service Identity and Access Management.

Création manuelle d'un agent de service

Si vous souhaitez déclencher la création d'un agent de service avant d'interagir avec l'API, par exemple si vous devez attribuer des rôles supplémentaires à l'agent de service, vous pouvez utiliser l'une des approches suivantes :

Lorsque vous déclenchez manuellement la création d'un agent de service, Google n'accorde pas automatiquement le rôle d'agent de service prédéfini. Vous devez attribuer manuellement le rôle prédéfini à l'agent de service à l'aide de la commande suivante de Google Cloud CLI :

gcloud projects add-iam-policy-binding project_number \
--member serviceAccount:service-project_number@gcp-sa-bigquerydatatransfer.iam.gserviceaccount.com \
--role roles/bigquerydatatransfer.serviceAgent

Où :

  • project_number est le numéro du projet dans lequel le service de transfert de données BigQuery est activé.

Accorder l'accès bigquery.admin

Nous vous recommandons d'attribuer le rôle IAM prédéfini bigquery.admin aux utilisateurs qui créent des transferts du service de transfert de données BigQuery. Le rôle bigquery.admin inclut les autorisations IAM nécessaires pour effectuer les tâches les plus courantes. Le rôle bigquery.admin inclut les autorisations suivantes sur le service de transfert de données BigQuery :

  • Autorisations du service de transfert de données BigQuery :
    • bigquery.transfers.update
    • bigquery.transfers.get
  • Autorisations BigQuery :
    • bigquery.datasets.get
    • bigquery.datasets.update
    • bigquery.jobs.create

Dans certains cas, les autorisations requises peuvent différer entre les différentes sources de données. Reportez-vous à la section "Autorisations requises" de chaque guide de transfert de source de données pour obtenir des informations IAM spécifiques. Par exemple, consultez la section Autorisations de transfert Amazon S3 ou Autorisations de transfert Cloud Storage.

Pour accorder le rôle bigquery.admin, procédez comme suit :

Console

  1. Ouvrez la page "IAM" dans la console Google Cloud.

    Ouvrir la page IAM

  2. Cliquez sur Sélectionner un projet.

  3. Sélectionnez un projet et cliquez sur Ouvrir.

  4. Cliquez sur Ajouter pour ajouter de nouveaux membres au projet et définir leurs autorisations.

  5. Dans la boîte de dialogue Ajouter des membres :

    • Dans le champ Membres, entrez l'adresse e-mail de l'utilisateur ou du groupe.
    • Dans la liste déroulante Sélectionner un rôle, cliquez sur BigQuery > Administrateur BigQuery.
    • Cliquez sur Ajouter.

      Accorder des droits d'administrateur

gcloud

Vous pouvez accorder le rôle bigquery.admin à un utilisateur ou à un groupe à l'aide de Google Cloud CLI.

Pour ajouter une liaison unique à la stratégie IAM de votre projet, saisissez la commande suivante. Pour ajouter un utilisateur, indiquez l'option --member au format user:user@example.com. Pour ajouter un groupe, indiquez l'option --member au format group:group@example.com.

gcloud projects add-iam-policy-binding project_id \
--member principal:address \
--role roles/bigquery.admin

Où :

  • project_id est l'ID de votre projet.
  • principal correspond à group ou user.
  • address est l'adresse e-mail de l'utilisateur ou du groupe.

Exemple :

gcloud projects add-iam-policy-binding myproject \
--member group:group@example.com \
--role roles/bigquery.admin

La commande génère la règle mise à jour :

    bindings:
    - members:
      - group:group@example.com
        role: roles/bigquery.admin
    

Pour en savoir plus sur les rôles IAM dans BigQuery, consultez la page Rôles prédéfinis et autorisations.

Étapes suivantes

Après avoir activé le service de transfert de données BigQuery, créez un transfert pour votre source de données.