VPC 可访问服务

要定义可从服务边界内的网络访问的服务,请使用 VPC 可访问服务功能。VPC 可访问服务功能限制了可从服务边界内的网络端点访问的一组服务。

VPC 可访问服务功能仅适用于从 VPC 网络端点到 Google API 的流量。与服务边界不同,VPC 可访问服务功能不适用于从一个 Google API 到另一个 API 的通信,也不适用于租户单元的网络(用于实现某些 Google Cloud 服务)。

在为边界配置 VPC 可访问服务时,您可以指定包含各个服务的列表,也可以添加 RESTRICTED-SERVICES 值,添加这个值即可让系统自动包括受该边界保护的所有服务。

要确保对预期服务的访问完全受限,您必须实施如下措施:

  • 配置边界以保护您希望设为可访问的那一组服务。

  • 配置边界中的 VPC 以使用受限 VIP 地址

  • 使用第 3 层防火墙。

示例:仅具有 Cloud Storage 访问权限的 VPC 网络

假设您的服务边界 my-authorized-perimeter 包括两个项目:my-authorized-compute-projectmy-authorized-gcs-project。该边界保护 Cloud Storage 服务。

my-authorized-gcs-project 使用多种服务,包括 Cloud Storage、Bigtable 等。my-authorized-compute-project 托管着一个 VPC 网络。

两个项目共享一个边界,所以 my-authorized-compute-project 中的 VPC 网络可以访问 my-authorized-gcs-project 中的服务资源,无论这些服务是否受到边界保护。但是,您希望 VPC 网络只能访问 my-authorized-gcs-project 中的 Cloud Storage 资源。

您担心如果 VPC 网络中某个虚拟机的凭据被盗用,攻击者可能会利用该虚拟机,渗漏 my-authorized-gcs-project 内任何可用服务中的数据。

您已将 VPC 网络配置为使用受限 VIP,从而限制该 VPC 网络仅可以访问 VPC Service Controls 支持的 API。遗憾的是,这不会阻止您的 VPC 网络访问受支持的服务,例如 my-authorized-gcs-project 中的 Bigtable 资源。

要将 VPC 网络限制为仅可访问存储服务,请启用 VPC 可访问服务,并将 storage.googleapis.com 设置为允许的服务:

gcloud access-context-manager perimeters update my-authorized-perimeter \
  --enable-vpc-accessible-services \
  --add-vpc-allowed-services=storage.googleapis.com

大功告成!my-authorized-compute-project 中的 VPC 网络现已限制为仅可访问 Cloud Storage 服务的资源。此限制也会应用于您今后添加到该边界的任何项目和 VPC 网络。

后续步骤