ネットワーク アタッチメントを使用して接続を構成する
BigQuery は、クエリ ステートメントを外部データベースに送信し、結果を一時テーブルとして取得する連携クエリをサポートしています。連携クエリは、BigQuery Connection API を使用して接続を確立します。このドキュメントでは、この接続のセキュリティを強化する方法について説明します。
接続はデータベースに直接接続するため、Google Cloud からデータベース エンジンへのトラフィックを許可する必要があります。セキュリティを強化するには、BigQuery クエリからのトラフィックのみを許可する必要があります。このトラフィックの制限は、次の 2 つの方法のいずれかで実現できます。
- BigQuery 接続で使用される静的 IP アドレスを定義し、外部データソースのファイアウォール ルールに追加する。
- BigQuery と内部インフラストラクチャの間に VPN を作成し、クエリに使用する。
どちらの方法も、ネットワーク アタッチメントを使用することでサポートされます。
始める前に
このドキュメントの各タスクを実行するために必要な権限をユーザーに与える Identity and Access Management(IAM)のロールを付与します。
必要なロール
ネットワーク アタッチメントで接続を構成するために必要な権限を取得するには、プロジェクトに対する Compute 管理者(roles/compute.admin
)IAM ロールを付与するよう管理者に依頼します。ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。
この事前定義ロールには、ネットワーク アタッチメントとの接続を構成するために必要な権限が含まれています。必要とされる正確な権限については、「必要な権限」セクションを開いてご確認ください。
必要な権限
ネットワーク アタッチメントを使用して接続を構成するには、次の権限が必要です。
-
compute.networkAttachments.get
-
compute.networkAttachments.update
カスタムロールや他の事前定義ロールを使用して、これらの権限を取得することもできます。
BigQuery での IAM のロールと権限の詳細については、BigQuery の IAM ロールと権限をご覧ください。
制限事項
ネットワーク アタッチメントを使用する接続には、次の制限があります。
- ネットワーク アタッチメントは、SAP Datasphere 接続でのみサポートされます。
- 標準リージョンの場合、ネットワーク アタッチメントは接続と同じリージョンに配置する必要があります。
US
マルチリージョン内の接続の場合、ネットワーク アタッチメントはus-central1
リージョンに配置する必要があります。EU
マルチリージョン内の接続の場合、ネットワーク アタッチメントはeurope-west4
リージョンに配置する必要があります。 - 作成後にネットワーク アタッチメントを変更することはできません。新しい方法で構成するには、ネットワーク アタッチメントを再作成する必要があります。
ネットワーク アタッチメントを作成する
クエリ連携用の接続を作成するときに、オプションのネットワーク アタッチメント パラメータを使用できます。このパラメータは、データベースへの接続が確立されるネットワークへの接続を提供するネットワーク アタッチメントを指します。ネットワーク アタッチメントは、静的 IP アドレスを定義するか、VPN を作成することで作成できます。どちらの場合も、次の手順を行います。
まだ作成していない場合は、VPC ネットワークとサブネットを作成します。
静的 IP アドレスを定義してネットワーク アタッチメントを作成する場合は、作成したネットワーク、リージョン、サブネットを使用して、静的 IP アドレスを持つ Cloud NAT ゲートウェイを作成します。VPN の作成によってネットワーク アタッチメントを作成する場合は、プライベート ネットワークに接続されている VPN を作成します。
作成したネットワーク、リージョン、サブネットを使用して、ネットワーク アタッチメントを作成します。
省略可: 組織のセキュリティ ポリシーによっては、次の設定でファイアウォール ルールを作成し、下り(外向き)を許可するように Google Cloud ファイアウォールを構成する必要があるかもしれません。
- [ターゲット] を [ネットワーク上のすべてのインスタンス] に設定します。
- [宛先 IPv4 範囲] を IP アドレス範囲全体に設定します。
- [指定したプロトコルとポート] を、データベースで使用されているポートに設定します。
作成した静的 IP アドレスからの上り(内向き)を許可するように内部ファイアウォールを構成します。このプロセスはデータソースによって異なります。
接続を作成し、作成したネットワーク アタッチメントの名前を含めます。
連携クエリを実行して、プロジェクトをネットワーク アタッチメントと同期します。
以上で、ネットワーク アタッチメントを使用して接続が構成され、連携クエリを実行できるようになりました。
料金
- 標準の連携クエリの料金が適用されます。
- VPC の使用には Virtual Private Cloud の料金が適用されます。
- Cloud VPN の使用には、Cloud VPN の料金が適用されます。
- Cloud NAT の使用には、Cloud NAT の料金が適用されます。