Google BigQuery 接続
Google BigQuery でデータにアクセスするには、そのデータ用の接続資産を作成します。
Google BigQuery は、ペタバイト単位のデータに対するスケーラブルな分析を可能にする、フル・マネージドのサーバーレス・データウェアハウスです。
Google BigQuery への接続を作成する
接続資産を作成するには、以下の接続の詳細が必要です:
共通コネクティビティー
- プロジェクトID : Google プロジェクトのID。
- APIサービス URL : BigQuery のプライベートサービスコネクトを使用している場合は、 BigQuery API サービスのエンドポイントの URI を指定します。 そうでない場合は、デフォルトのURIが使用される。
- サーバプロキシ (オプション)
HTTPS プロキシサーバーを経由して Google BigQuery データソースにアクセスするには、 Server proxy を選択します。 プロキシー・サーバーは、そのセットアップに応じて、ロード・バランシング、セキュリティーの向上、およびプライバシーを提供することができます。 プロキシー・サーバーの設定は、認証資格情報および個人資格情報または共有資格情報の選択から独立しています。 セキュリティ強化のためにSSL証明書を提供することも可能です。
- Proxy host :プロキシサーバーのホスト名またはIPアドレス。 例えば、
proxy.example.comまたは192.0.2.0などです。 - プロキシポート :プロキシサーバーに接続するポート番号。 例えば、
8080または8443などです。 - プロキシー・ユーザー名 および プロキシー・パスワード。
- プロキシプロトコル :プロキシサーバーのプロトコル。 または HTTP または HTTPS.
StreamSets
- プロジェクトID : Google プロジェクトのID。
資格情報
あなたのデプロイメント基づいた特定の認証方法があります:
共通コネクティビティー
認証方法を選択し、各方法に必要な詳細を記入する:
アカウント・キー(完全なJSONスニペット)
- 認証情報 : Google サービス・アカウント・キー(JSON)ファイルの内容。
クライアントID、クライアント秘密鍵、アクセス・トークン、およびリフレッシュ・トークン
- アクセストークン : Google BigQuery に接続するためのアクセストークン。
- クライアントID :OAuthクライアントID。
- クライアントのシークレット:OAuth クライアントのシークレット。
- リフレッシュ・トークン :アクセストークンをリフレッシュするためのリフレッシュトークン。
ワークロード ID フェデレーションでは
認証に外部 ID プロバイダ ( IdP ) を使用する。 外部 ID プロバイダーは、サービス・アカウント・キーの代わりに ID およびアクセス管理 (IAM) を使用します。 IAM は、セキュリティーの強化と集中管理を提供します。 ワークロード ID フェデレーション認証は、アクセストークンを使用するか、トークン URL を使用して使用することができます。
OpenID Connect(OIDC)仕様に準拠し、 Prepare your external IdP に記載されている Google Cloud 要件を満たす任意の ID プロバイダとのワークロード ID フェデレーション用に、 Google BigQuery 接続を構成できます。 要件には以下が含まれます。
- ID プロバイダーは、 OpenID Connect 1.0をサポートしている必要があります。
- ID プロバイダーの OIDC メタデータおよび JWKS エンドポイントは、インターネット経由でパブリックにアクセス可能でなければなりません。 Google Cloud は、これらのエンドポイントを使用して ID プロバイダーの鍵セットをダウンロードし、その鍵セットを使用してトークンを検証します。
- ID プロバイダーは、ワークロードが以下の基準を満たす ID トークンを取得できるように構成されます。
- トークンは、 RS256 または ES256 アルゴリズムで署名されます。
- トークンには aud クレームが含まれます。
Amazon Web Services ( AWS ) および Microsoft Azure のワークロード ID フェデレーション構成手順の例については、 ワークロード ID フェデレーションの例を参照のこと。
アクセストークン接続によるワークロードIDフェデレーション
Security Token Service オーディエンス: プロジェクト ID、プール ID、およびプロバイダー ID を含むセキュリティー・トークン・サービス・オーディエンス。 次の形式を使用します。
//iam.googleapis.com/projects/PROJECT_NUMBER/locations/global/workloadIdentityPools/POOL_ID/providers/PROVIDER_ID詳細については、 REST APIを使用したワークロードの認証を参照してください。
サービス・アカウント E メール: 偽名を使用する Google サービス・アカウントの E メール・アドレス。 詳細については、 外部ワークロード用のサービスアカウントの作成を参照してください。
サービス・アカウント・トークン存続時間 (オプション): サービス・アカウント・アクセス・トークンの存続時間 (秒)。 サービス・アカウント・アクセス・トークンのデフォルトの存続時間は 1 時間です。 詳細については、 URL ソースの資格情報 」 を参照してください。
トークン・フォーマット: トークンを含む JSON 応答内のフィールドの名前の「トークン」フィールド名を含むテキストまたは JSON。
トークン・フィールド名: トークンが含まれている JSON 応答内のフィールドの名前。 このフィールドは、 「トークン・フォーマット」 が JSON の場合にのみ表示されます。
トークン・タイプ: AWS Signature バージョン 4 要求、 Google OAuth 2.0 アクセス・トークン、ID トークン、JSON Web Token (JWT)、または SAML 2.0。
アクセストークン : Google BigQuery に接続するための ID プロバイダからのアクセストークン。
トークンによるワークロード ID フェデレーション URL 接続の詳細
Security Token Service オーディエンス: プロジェクト ID、プール ID、およびプロバイダー ID を含むセキュリティー・トークン・サービス・オーディエンス。 次の形式を使用します。
//iam.googleapis.com/projects/PROJECT_NUMBER/locations/global/workloadIdentityPools/POOL_ID/providers/PROVIDER_ID詳細については、「 REST API を使用してワークロードを認証する 」を参照してください。
サービス・アカウント E メール: 偽名を使用する Google サービス・アカウントの E メール・アドレス。 詳細については、 外部ワークロード用のサービスアカウントの作成を参照してください。
サービス・アカウント・トークン存続時間 (オプション): サービス・アカウント・アクセス・トークンの存続時間 (秒)。 サービス・アカウント・アクセス・トークンのデフォルトの存続時間は 1 時間です。 詳細については、 URL ソースの資格情報 」 を参照してください。
Token URL : トークンを取得するための URL。
HTTP method : トークン リクエストに使用するメソッド:GET、POST、またはPUT。 HTTP URL
リクエスト・ボディ (POST または PUT メソッドの場合):トークンを取得するための HTTP リクエスト本文。
HTTP headers : トークン リクエストのヘッダを JSON で、または JSON のボディとして 送ります。 URL HTTP
"Key1"="Value1","Key2"="Value2"という形式を使用します。トークン・フォーマット: トークンを含む JSON 応答内のフィールドの名前の「トークン」フィールド名を含むテキストまたは JSON。
トークン・フィールド名: トークンが含まれている JSON 応答内のフィールドの名前。 このフィールドは、 「トークン・フォーマット」 が JSON の場合にのみ表示されます。
トークン・タイプ: AWS Signature バージョン 4 要求、 Google OAuth 2.0 アクセス・トークン、ID トークン、JSON Web Token (JWT)、または SAML 2.0。
その他のプロパティー
出力 JSON ストリング・フォーマット: 複合データ・タイプ (ネストまたは反復など) の出力値の JSON ストリング・フォーマット。
- Pretty: 値は、出力に送信される前にフォーマットされます。 いくつかの行を視覚的に読み取るには、このオプションを使用します。
- Raw: (デフォルト) フォーマット設定なし。 最高のパフォーマンスを得るためには, このオプションを使用してください。
メタデータ・ディスカバリー: この設定は、この接続を使用して資産を追加するときに、表やビュー (シノニム) などのスキーマ・オブジェクトの列 (注釈) および別名に関するコメントを取得するかどうかを決定します。
StreamSets
認証方法を選択し、各方法に必要な詳細を記入する:
アカウント・キー(完全なJSONスニペット)
- 認証情報 : Google サービス・アカウント・キー(JSON)ファイルの内容。
デフォルトの資格情報プロバイダー
権限
Google BigQuery への接続には、以下の BigQuery 権限が必要です。
bigquery.job.createbigquery.tables.getbigquery.tables.getData
次の 3 つの方法のいずれかを使用して、これらの権限を取得します:
- 以下の権限を含める事前定義された BigQuery Cloud IAM 役割
bigquery.adminを使用します; - 2 つの役割の組み合わせを使用します。以下の表の各列から1つを選択するか、
- またはカスタム役割を作成します。 カスタムロールの作成と管理を参照してください。
| 最初の役割 | 2 番目の役割 |
|---|---|
bigquery.dataEditor |
bigquery.jobUser |
bigquery.dataOwner |
bigquery.user |
bigquery.dataViewer |
Google BigQuery におけるパーミッションとロールの詳細については、 定義済みのロールとパー ミッションを参照してください。