将专用 Google 访问通道与 VPC Service Controls 配合使用

专用 Google 访问通道提供与 VPC 网络或本地网络中主机的专用连接,这些主机使用专用 IP 地址访问 Google API 和服务。您可以将 VPC Service Controls 服务边界扩展到这些网络中的主机,以控制对受保护资源的访问权限。

对于 VPC 网络中的主机,它们必须仅具有专用 IP 地址(没有公共 IP 地址),且位于启用了专用 Google 访问通道的子网中。

如需使本地主机访问受限的 Google API 服务,对 Google API 的请求必须通过 VPC 网络(可以通过 Cloud VPN 隧道或 Cloud Interconnect 连接)发送。

在这两种情况下,对 Google API 和服务的所有请求都必须发送到虚拟 IP 地址 (VIP) 范围 199.36.153.4/30 (restricted.googleapis.com)。此 IP 地址范围不会公布到互联网。发送到 VIP 的流量只会留在 Google 的网络中。

VPC 网络示例

在以下示例中,服务边界包含两个项目:一个项目具有已获授权的 VPC 网络,另一个项目具有受保护的 Cloud Storage 资源。在 VPC 网络中,虚拟机实例必须位于启用了专用 Google 访问通道的子网中,并且只需要访问 VPC Service Controls 受限服务。从已获授权的 VPC 网络中的虚拟机实例到 Google API 和服务的查询会解析为 restricted.googleapis.com,并且可以访问受保护的资源。

将专用 Google 访问通道与 VPC Service Controls 结合使用(点击可放大)
将专用 Google 访问通道与 VPC Service Controls 结合使用(点击可放大)
  • 在 VPC 网络中配置了 DNS,以将 *.googleapis.com 请求映射到解析为 199.36.153.4/30restricted.googleapis.com
  • 向 VPC 网络添加了自定义静态路由,以将目的地为 199.36.153.4/30 的流量定向到 default-internet-gateway 作为下一个跃点。即使 default-internet-gateway 用作下一个跃点,流量也会通过 Google 的网络私密地路由到相应 API 或服务。
  • VPC 网络获得了访问 My-authorized-gcs-project 的授权,因为这两个项目都位于同一服务边界内。

本地网络示例

您可以通过以下任一方式使用静态路由:在本地路由器中配置静态路由,或者从 Cloud Router 通过边界网关协议 (BGP) 公布受限 Google API 地址范围。

如需将适用于本地主机的专用 Google 访问通道与 VPC Service Controls 配合使用,请为本地主机设置专用连接,然后配置 VPC Service Controls。为连接您的本地网络的 VPC 网络所属的项目定义服务边界。

在以下场景中,项目 sensitive-buckets 中的存储分区只能通过项目 main-project 中的虚拟机实例和连接的本地应用访问。本地主机可以访问项目 sensitive-buckets 中的存储分区,因为流量经过的 VPC 网络与 sensitive-buckets 位于同一服务边界内。

  • 本地 DNS 配置会将 *.googleapis.com 请求映射到解析为 199.36.153.4/30restricted.googleapis.com
  • Cloud Router 路由器已配置为通过 VPN 隧道通告 199.36.153.4/30 IP 地址范围。流向 Google API 的流量会经由隧道路由到 VPC 网络。
  • 向 VPC 网络添加了自定义静态路由,以便将目的地为 199.36.153.4/30 的流量定向到 default-internet-gateway 作为下一个跃点。即使 default-internet-gateway 用作下一个跃点,流量也会通过 Google 的网络私密地路由到相应 API 或服务。
  • VPC 网络获得了访问 sensitive-buckets 项目的授权,且本地主机具有相同的访问权限。
  • 本地主机无法访问位于服务边界外的其他资源。

连接到本地网络的项目必须是服务边界的成员才能访问受限资源。如果相关项目通过边界网桥连接,则本地访问也会起作用。

后续步骤