認証のスタートガイド

アプリケーションのデフォルト認証情報により、サービス アカウント認証情報を使用したアプリケーション固有の ID で BigQuery リソースにアクセスすることが可能になります。

始める前に

アプリケーションのデフォルト認証情報

クライアント ライブラリは、アプリケーションのデフォルト認証情報を使うことによって、Google API で簡単に認証を行い、これら API にリクエストを送信できます。アプリケーションのデフォルト認証情報により、ローカルでアプリケーションのテストを行い、基本となるコードを変更することなくアプリケーションをデプロイできるようになります。コードのサンプルを含む、詳しい情報は、Google Cloud Platform Auth ガイドをご覧ください。

BigQuery クライアント ライブラリを使用してサービス オブジェクトを作成し、明示的な認証情報を渡さない場合、アプリケーションはアプリケーションのデフォルト認証情報を使用して認証されます。

C#

このサンプルを試す前に、BigQuery クイックスタート: クライアント ライブラリの使用の C# の設定手順を実施してください。詳細については、BigQuery C# API のリファレンス ドキュメントをご覧ください。


    using Google.Cloud.BigQuery.V2;
    using System;

    public class BigQueryCreateDataset
    {
        public BigQueryDataset CreateDataset(
            string projectId = "your-project-id",
            string location = "US"
        )
        {
            BigQueryClient client = BigQueryClient.Create(projectId);
            var createDatasetOptions = new CreateDatasetOptions()
            {
                // Specify the geographic location where the dataset should reside.
                Location = location
            };
            // Create the dataset
            return client.CreateDataset(
                datasetId: "your_new_dataset_id", options: createDatasetOptions);
        }
    }

Go

このサンプルを試す前に、BigQuery クイックスタート: クライアント ライブラリの使用の Go の設定手順を実施してください。詳細については、BigQuery Go API のリファレンス ドキュメントをご覧ください。


    // Sample bigquery-quickstart creates a Google BigQuery dataset.
    package main

    import (
    	"context"
    	"fmt"
    	"log"

    	"cloud.google.com/go/bigquery"
    )

    func main() {
    	ctx := context.Background()

    	// Sets your Google Cloud Platform project ID.
    	projectID := "YOUR_PROJECT_ID"

    	// Creates a client.
    	client, err := bigquery.NewClient(ctx, projectID)
    	if err != nil {
    		log.Fatalf("bigquery.NewClient: %v", err)
    	}
    	defer client.Close()

    	// Sets the name for the new dataset.
    	datasetName := "my_new_dataset"

    	// Creates the new BigQuery dataset.
    	if err := client.Dataset(datasetName).Create(ctx, &bigquery.DatasetMetadata{}); err != nil {
    		log.Fatalf("Failed to create dataset: %v", err)
    	}

    	fmt.Printf("Dataset created\n")
    }
    

Java

このサンプルを試す前に、BigQuery クイックスタート: クライアント ライブラリの使用の Java の設定手順を実施してください。詳細については、BigQuery Java API のリファレンス ドキュメントをご覧ください。

public static void implicit() {
      // Instantiate a client. If you don't specify credentials when constructing a client, the
      // client library will look for credentials in the environment, such as the
      // GOOGLE_APPLICATION_CREDENTIALS environment variable.
      BigQuery bigquery = BigQueryOptions.getDefaultInstance().getService();

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

Node.js

このサンプルを試す前に、BigQuery クイックスタート: クライアント ライブラリの使用の Node.js の設定手順を実施してください。詳細については、BigQuery Node.js API のリファレンス ドキュメントをご覧ください。

// Import the Google Cloud client library using default credentials
    const {BigQuery} = require('@google-cloud/bigquery');
    const bigquery = new BigQuery();

PHP

このサンプルを試す前に、BigQuery クイックスタート: クライアント ライブラリの使用の PHP の設定手順を実施してください。詳細については、BigQuery PHP API のリファレンス ドキュメントをご覧ください。

use Google\Cloud\BigQuery\BigQueryClient;

    /** Uncomment and populate these variables in your code */
    //$projectId = 'The Google project ID';

    $bigQuery = new BigQueryClient([
        'projectId' => $projectId,
    ]);

Python

このサンプルを試す前に、BigQuery クイックスタート: クライアント ライブラリの使用の Python の設定手順を実施してください。詳細については、BigQuery Python API のリファレンス ドキュメントをご覧ください。

from google.cloud import bigquery

    # If you don't specify credentials when constructing the client, the
    # client library will look for credentials in the environment.
    client = bigquery.Client()

Ruby

このサンプルを試す前に、BigQuery クイックスタート: クライアント ライブラリの使用の Ruby の設定手順を実施してください。詳細については、BigQuery Ruby API のリファレンス ドキュメントをご覧ください。

require "google/cloud/bigquery"

    # This uses Application Default Credentials to authenticate.
    # @see https://cloud.google.com/bigquery/docs/authentication/getting-started
    bigquery = Google::Cloud::Bigquery.new

    sql     = "SELECT " +
              "CONCAT('https://stackoverflow.com/questions/', " +
              "       CAST(id as STRING)) as url, view_count " +
              "FROM `bigquery-public-data.stackoverflow.posts_questions` " +
              "WHERE tags like '%google-bigquery%' " +
              "ORDER BY view_count DESC LIMIT 10"
    results = bigquery.query sql

    results.each do |row|
      puts "#{row[:url]}: #{row[:view_count]} views"
    end

次のステップ

デフォルトの認証情報がアプリケーションの要件に合わない場合は、別の認証情報タイプで明示的に認証を行います。次の方法を学習してください。