Como autenticar com um arquivo de chave da conta de serviço

Crie e receba manualmente as credenciais da conta de serviço para usar o BigQuery quando um aplicativo estiver implantado no local ou em outras nuvens públicas. Você pode configurar a variável de ambiente para carregar as credenciais usando o Application Default Credentials ou pode especificar o caminho para carregá-las manualmente no código do aplicativo.

Com este guia, você aprenderá a carregar as credenciais de um arquivo.

Antes de começar

Como carregar as credenciais de um arquivo

Crie credenciais no aplicativo a partir do arquivo da conta de serviço. Depois, basta usá-las para criar um objeto de serviço com as Bibliotecas de cliente do BigQuery.

C#

Carregue as credenciais do arquivo JSON usando GoogleCredential.FromStream(Stream).

Depois de criar uma GoogleCredential, transmita-a para BigQueryClient.Create(String, GoogleCredential) para gerar o objeto de serviço do BigQuery.

Para mais exemplos, consulte Como configurar a autenticação em aplicativos de produção de servidor para servidor.

Java

Crie um objeto ServiceAccountCredentials a partir de um arquivo usando ServiceAccountCredentials.fromStream(InputStream). Transmita as credenciais para BigQueryOptions.Builder e crie o serviço do BigQuery a partir dessas opções.

public static void explicit() throws IOException {
  // Load credentials from JSON key file. If you can't set the GOOGLE_APPLICATION_CREDENTIALS
  // environment variable, you can explicitly load the credentials file to construct the
  // credentials.
  GoogleCredentials credentials;
  File credentialsPath = new File("service_account.json");  // TODO: update to your key path.
  try (FileInputStream serviceAccountStream = new FileInputStream(credentialsPath)) {
    credentials = ServiceAccountCredentials.fromStream(serviceAccountStream);
  }

  // Instantiate a client.
  BigQuery bigquery =
      BigQueryOptions.newBuilder().setCredentials(credentials).build().getService();

  // Use the client.
  System.out.println("Datasets:");
  for (Dataset dataset : bigquery.listDatasets().iterateAll()) {
    System.out.printf("%s%n", dataset.getDatasetId().getDataset());
  }
}

Python

Use bigquery.Client.from_service_account_json(path) para criar um cliente do BigQuery utilizando o arquivo de chave da conta de serviço.

from google.cloud import bigquery

# Explicitly use service account credentials by specifying the private
# key file. All clients in google-cloud-python have this helper.
client = bigquery.Client.from_service_account_json(
    "path/to/service_account.json"
)

A seguir

Esta página foi útil? Conte sua opinião sobre:

Enviar comentários sobre…

Precisa de ajuda? Acesse nossa página de suporte.