エンドポイントを介した Google API へのアクセスについて (original) (raw)

このドキュメントでは、Google API へのアクセスに使用される Private Service Connect エンドポイントの概要について説明します。

デフォルトでは、Cloud Storage などの Google サービスを使用するアプリケーションは、そのサービスのデフォルトの DNS 名(storage.googleapis.com など)に接続されます。Google サービスのデフォルトの DNS 名は、一般公開されたルーティング可能な IP アドレスに解決されます。ただし、Google Cloud リソースからこれらの IP アドレスに送信されたトラフィックは、Google のネットワーク内に残ります。

Private Service Connect を使用すると、VPC ネットワーク内のグローバル内部 IP アドレスを使用してプライベート エンドポイントを作成できます。これらの内部 IP アドレスには、storage-vialink1.p.googleapis.combigtable-adsteam.p.googleapis.com など、意味のある名前で DNS 名を割り当てることができます。これらの名前と IP アドレスは VPC ネットワークの内部用で、Cloud VPN トンネルまたは VLAN アタッチメント経由で接続しているオンプレミス ネットワークでも使用できます。エンドポイントに配信されるトラフィックを制御し、トラフィックを Google Cloud内にとどめることができます。

このオプションを選択すると、API バンドルに含まれているすべての Google API とサービスにアクセスできます。

図 1. Private Service Connect では、VPC ネットワーク専用のエンドポイントを使用して Google API にトラフィックを送信できます(クリックして拡大)。

機能と互換性

次の表は、Google API へのアクセスに使用されるエンドポイントでサポートされている機能をまとめたものです。

構成 詳細
コンシューマーの構成(エンドポイント)
グローバルなネットワーク到達性 内部グローバル IP アドレスを使用
Cloud Interconnect のトラフィック
Cloud VPN のトラフィック
VPC ネットワーク ピアリングによるアクセス
Network Connectivity Center を介した接続の伝播
DNS の自動構成
IP バージョン IPv4
プロデューサー
サポート対象のサービス サポートされているグローバル Google API

オンプレミス アクセス

Google API へのアクセスに使用する Private Service Connect エンドポイントには、接続されているサポート対象のオンプレミス ホストからアクセスできます。詳細については、オンプレミス ホストからエンドポイントにアクセスするをご覧ください。

Private Service Connect と Service Directory

エンドポイントは Service Directory に登録されます。Service Directory は、サービスを保存、管理、公開するためのプラットフォームです。Google API とサービスにアクセスするためのエンドポイントを作成するときに、Service Directory リージョンと Service Directory の名前空間を選択します。

Service Directory リージョン

Service Directory はリージョン サービスです。選択したリージョンによって、Service Directory のコントロール プレーンが存在するリージョンが定義されます。リージョン間で機能的な違いはありませんが、管理上の理由から検討が必要になる場合があります。

VPC ネットワークに Google API の最初のエンドポイントを作成すると、選択したリージョンが、そのネットワークでそれ以降作成するすべてのエンドポイントのデフォルトのリージョンとして使用されます。リージョンがネットワークにまだ設定されておらず、リージョンを指定しないと、リージョンは us-central1 に設定されます。ネットワーク内のすべてのエンドポイントは同じ Service Directory リージョンを使用する必要があります。

Service Directory の名前空間

VPC ネットワークに Google API の最初のエンドポイントを作成すると、選択した名前空間が、そのネットワークでその後に作成したすべてのエンドポイントのデフォルトの名前空間として使用されます。その名前空間がまだネットワークに設定されておらず、名前空間を指定しない場合、システム生成の名前空間が使用されます。ネットワーク内のすべてのエンドポイントは同じ Service Directory の名前空間を使用する必要があります。選択する名前空間は、Google API へのアクセスに使用されるエンドポイントにしか使用できません。複数のネットワークのエンドポイントに同じ名前空間を使用できます。

エンドポイントを作成すると、次の DNS 構成が作成されます。

利用可能なサービスは、all-apisvpc-sc のどちらの API バンドルを選択するかによって異なります。

エンドポイントを含む VPC ネットワークごとに 1 つの Service Directory DNS ゾーンが作成されます。

エンドポイントの DNS 名は、VPC ネットワークのすべてのリージョンからアクセスできます。

サポートされている API

Google API とサービスにアクセスするエンドポイントを作成するときに、すべての APIall-apis)または VPC-SCvpc-sc)にアクセスするために必要な API のバンドルを選択します。

API バンドルは、TCP 上の HTTP ベースのプロトコル(HTTP、HTTPS、HTTP/2)のみをサポートしています。MQTT や ICMP などの他のプロトコルはサポートされていません。

API バンドル サポート対象のサービス 使用例
all-apis VPC Service Controls でサポートされているかどうかにかかわらず、ほとんどの Google API とサービスへの API アクセスを有効にします。Google マップ、Google 広告、 Google Cloud、以下のリストを含む他のほとんどの Google API への API アクセスが含まれます。Gmail や Google ドキュメントなどの Google Workspace ウェブ アプリケーションはサポートされていません。インタラクティブなウェブサイトはサポートされていません。 一致するドメイン名: accounts.google.com(サービス アカウントの OAuth 認証に必要なパスのみをサポートします。ユーザー アカウントの認証はインタラクティブであり、サポートされていません) *.aiplatform-notebook.cloud.google.com *.aiplatform-notebook.googleusercontent.com appengine.google.com *.appspot.com *.backupdr.cloud.google.com backupdr.cloud.google.com *.backupdr.googleusercontent.com backupdr.googleusercontent.com *.cloudfunctions.net *.cloudproxy.app *.composer.cloud.google.com *.composer.googleusercontent.com *.datafusion.cloud.google.com *.datafusion.googleusercontent.com *.dataproc.cloud.google.com dataproc.cloud.google.com *.dataproc.googleusercontent.com dataproc.googleusercontent.com dl.google.com gcr.io または *.gcr.io *.googleapis.com *.gke.goog *.gstatic.com *.kernels.googleusercontent.com *.ltsapis.goog *.notebooks.cloud.google.com *.notebooks.googleusercontent.com packages.cloud.google.com pkg.dev または *.pkg.dev pki.goog または *.pki.goog *.run.app source.developers.google.com storage.cloud.google.com 次の状況では all-apis を選択します。 VPC Service Controls を使用しない。 VPC Service Controls を使用するものの、VPC Service Controls でサポートされていない Google API とサービスにもアクセスする必要がある1
vpc-sc VPC Service Controls でサポートされている Google API およびサービスへの API アクセスを有効にします。 VPC Service Controls をサポートしない Google API とサービスへのアクセスをブロックします。Google Workspace API、または Gmail や Google ドキュメントなどの Google Workspace ウェブ アプリケーションはサポートされていません。 VPC Service Controls でサポート_されている_ Google API とサービスにアクセスする必要がある場合に_のみ_ vpc-sc を選択します。vpc-sc バンドルは VPC Service Controls をサポートしていない Google API とサービスへのアクセスを許可しません1

1ユーザーがアクセスできる対象を、VPC Service Controls をサポートする Google API とサービスのみに制限する必要がある場合は、vpc-sc を使用します。これにより、データ引き出しのリスクがさらに軽減されます。vpc-sc を使用すると、VPC Service Controls でサポートされていない Google API とサービスへのアクセスは拒否されます。詳細については、VPC Service Controls に関するドキュメントのプライベート接続の設定をご覧ください。

IP アドレスの要件

VPC ネットワークで Private Service Connect を構成するときに、エンドポイントで使用する IP アドレスを指定します。

このアドレスは、グローバル内部 IP アドレスのプロジェクトの割り当てにカウントされます。

IP アドレスは、次の仕様を満たしている必要があります。

ユースケース

同じ VPC ネットワーク内に複数のエンドポイントを作成できます。特定のエンドポイントに送信される合計帯域幅に上限はありません。エンドポイントはグローバル内部 IP アドレスを使用するため、VPC ネットワーク内のすべてのリソースで使用できます。また、Cloud VPN トンネルまたは Cloud Interconnect アタッチメントを使用して接続されたオンプレミス ネットワークでも使用できます。

複数のエンドポイントが存在する場合、Cloud Router とファイアウォール ルールを使用して異なるネットワーク パスを指定できます。

料金

Private Service Connect の料金については、VPC の料金ページをご覧ください。

割り当て

Google API にアクセスするために作成できる Private Service Connect エンドポイントの数は、PSC Google APIs Forwarding Rules per VPC Network 割り当てによって制御されます。詳細については、割り当てをご覧ください。

組織ポリシーの制約

組織のポリシーの管理者は、constraints/compute.disablePrivateServiceConnectCreationForConsumers 制約を使用して、ユーザーが転送ルールを作成できないエンドポイント タイプのセットを定義できます。

この制約を使用する組織のポリシーの作成方法については、利用者によるエンドポイントのデプロイを接続タイプによってブロックするをご覧ください。

次のステップ