Ative o Serviço de transferência de dados do BigQuery

Para usar o Serviço de transferência de dados do BigQuery, tem de concluir os seguintes passos como proprietário do projeto:

  • Crie um projeto e ative a API BigQuery.
  • Ative o Serviço de transferência de dados do BigQuery.

Para mais informações sobre as funções de gestão de identidade e de acesso (IAM), consulte o artigo Funções e autorizações na documentação da IAM.

Crie um projeto e ative a API BigQuery

Antes de usar o Serviço de transferência de dados do BigQuery, tem de criar um projeto e, na maioria dos casos, ativar a faturação nesse projeto. Pode usar um projeto existente com o Serviço de transferência de dados do BigQuery ou criar um novo. Se estiver a usar um projeto existente, também pode ter de ativar a API BigQuery.

Para criar um projeto e ativar a API BigQuery:

  1. In the Google Cloud console, go to the project selector page.

    Go to project selector

  2. Select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.
  3. Ative a faturação no seu projeto para todas as transferências. Não lhe é cobrado nenhum valor por transferências gratuitas.

    A ativação da faturação só é necessária uma vez por projeto, mesmo que esteja a transferir dados de várias origens. A faturação também tem de estar ativada para consultar os dados no BigQuery após a transferência dos dados.

    Saiba como confirmar que a faturação está ativada no seu projeto.

  4. O BigQuery é ativado automaticamente em novos projetos. Para ativar o BigQuery num projeto existente, ative a API BigQuery.

    Ative a API BigQuery

Ative o Serviço de transferência de dados do BigQuery

Antes de poder criar uma transferência, tem de ativar o Serviço de transferência de dados do BigQuery. Para ativar o Serviço de transferência de dados do BigQuery, tem de lhe ser atribuída a função de proprietário para o seu projeto.

Para ativar o Serviço de transferência de dados do BigQuery:

  1. Abra a página da API BigQuery Data Transfer na biblioteca de APIs.

  2. No menu pendente, selecione o projeto adequado.

  3. Clique no botão ATIVAR.

    Ative a API Data Transfer

Agente do serviço

O Serviço de transferência de dados do BigQuery usa um agente de serviço para aceder e gerir os seus recursos. Isto inclui, entre outros, os seguintes recursos:

  • Obter uma chave de acesso para a conta de serviço a usar ao autorizar a transferência de dados.
  • Publicar notificações no tópico Pub/Sub fornecido, se estiver ativado.
  • Iniciar tarefas do BigQuery.
  • Obter eventos da subscrição do Pub/Sub fornecida para a transferência baseada em eventos do Cloud Storage

O agente de serviço é criado automaticamente em seu nome depois de ativar o Serviço de transferência de dados do BigQuery e usar a API pela primeira vez. Após a criação do agente de serviço, a Google concede automaticamente a função de agente de serviço predefinida.

Autorização de conta de serviço entre projetos

Se autorizar a transferência de dados através de uma conta de serviço de um projeto que seja diferente do projeto com o Serviço de transferência de dados do BigQuery ativado, tem de conceder a função roles/iam.serviceAccountTokenCreator ao agente de serviço através do seguinte comando da CLI do Google Cloud:

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

Onde:

  • service_account é a conta de serviço entre projetos usada para autorizar a transferência de dados.
  • project_number é o número do projeto onde o Serviço de transferência de dados do BigQuery está ativado.

Para mais informações sobre a configuração de recursos entre projetos, consulte o artigo Configurar para um recurso num projeto diferente na documentação sobre a representação de contas de serviço da gestão de identidades e acessos.

Criação manual de agentes de serviço

Se quiser acionar a criação do agente de serviço antes de interagir com a API, por exemplo, se precisar de conceder funções adicionais ao agente de serviço, pode usar uma das seguintes abordagens:

Quando aciona manualmente a criação de agentes de serviço, a Google não concede automaticamente a função de agente de serviço predefinida. Tem de conceder manualmente ao agente de serviço a função predefinida através do seguinte comando da CLI do Google Cloud:

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

Onde:

  • project_number é o número do projeto onde o Serviço de transferência de dados do BigQuery está ativado.

Conceda bigquery.admin acesso

Recomendamos que conceda a função de IAM predefinida bigquery.admin aos utilizadores que criam transferências do Serviço de transferência de dados do BigQuery. A função bigquery.admin inclui as autorizações de IAM necessárias para realizar as tarefas mais comuns. A função bigquery.admin inclui as seguintes autorizações do Serviço de transferência de dados do BigQuery:

  • Autorizações do Serviço de transferência de dados do BigQuery:
    • bigquery.transfers.update
    • bigquery.transfers.get
  • Autorizações do BigQuery:
    • bigquery.datasets.get
    • bigquery.datasets.getIamPolicy
    • bigquery.datasets.update
    • bigquery.datasets.setIamPolicy
    • bigquery.jobs.create

Em alguns casos, as autorizações necessárias podem diferir entre diferentes origens de dados. Consulte a secção "Autorizações necessárias" no guia de transferência de cada origem de dados para ver informações específicas sobre o IAM. Por exemplo, consulte as autorizações de transferência do Amazon S3 ou as autorizações de transferência do Cloud Storage.

Para conceder a função de bigquery.admin:

Consola

  1. Abra a página IAM na Google Cloud consola

    Abra a página IAM

  2. Clique em Selecionar um projeto.

  3. Selecione um projeto e clique em Abrir.

  4. Clique em Adicionar para adicionar novos membros ao projeto e definir as respetivas autorizações.

  5. Na caixa de diálogo Adicionar membros:

    • Para Membros, introduza o endereço de email do utilizador ou do grupo.
    • No menu pendente Selecionar uma função, clique em BigQuery > BigQuery Administrador.
    • Clique em Adicionar.

      Conceda acesso de administrador

gcloud

Pode usar a CLI Google Cloud para conceder a um utilizador ou a um grupo a função bigquery.admin.

Para adicionar uma única associação à política de IAM do seu projeto, escreva o seguinte comando. Para adicionar um utilizador, indique a flag --member no formato user:user@example.com. Para adicionar um grupo, indique a flag --member no formato group:group@example.com.

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

Onde:

  • project_id é o ID do seu projeto.
  • principal é group ou user.
  • address é o endereço de email do utilizador ou do grupo.

Por exemplo:

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

O comando produz a política atualizada:

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

Para mais informações sobre as funções de IAM no BigQuery, consulte o artigo Funções e autorizações predefinidas.

O que se segue?

Depois de ativar o Serviço de transferência de dados do BigQuery, crie uma transferência para a sua origem de dados.