VPC Service Controls 概览

VPC Service Controls 可帮助您降低 Google 托管式服务(如 Cloud Storage 和 BigQuery)中发生数据渗漏的风险。借助 VPC Service Controls,您可以为 Google 托管式服务的资源配置安全边界,并控制跨边界的数据移动。

对于所有使用 VPC Service Controls 保护的 Google 托管式服务,我们向您保证:

  • 边界内的资源只能在已授权的 VPC 网络中的客户端上,通过 Google Cloud 或本地的专用 Google 访问通道进行专有访问。

  • 边界内对资源具有专有访问权限的客户端无法访问边界外的未授权(可能是公开的)资源。

  • 无法使用 gsutil cpbq mk 等服务操作将数据复制到边界外的未授权资源。

  • 如果启用对边界内资源的互联网访问,此类访问的来源将限制为列入白名单的 IPv4 和 IPv6 范围。

VPC Service Controls 为 Google Cloud 服务额外提供一重独立于 Cloud Identity and Access Management (Cloud IAM) 的安全防护。Cloud IAM 实现了精细的基于身份的访问权限控制,而 VPC Service Controls 可实现更广泛的基于上下文的边界安全性,包括控制跨边界数据出站流量。我们建议同时使用 VPC Service Controls 和 Cloud IAM 以实现深度防护。

VPC Service Controls 的安全优势

VPC Service Controls 可帮助降低以下安全风险,同时不影响对 Google Cloud 资源的直接专有访问带来的性能优势:

  1. 使用被盗凭据从未授权网络进行的访问:通过仅允许从已授权的 VPC 网络进行专有访问,VPC Service Controls 可保护 OAuth 凭据或服务帐号凭据,避免被盗。

  2. 恶意内部人员或代码被破解造成的数据渗漏:VPC Service Controls 阻止网络中的客户端访问位于边界外的 Google 托管式服务的资源,以此作为出站流量控制的补充。

    此外,VPC Service Controls 会阻止使用服务操作(例如,使用 gsutil cp 命令复制到公开 Cloud Storage 存储分区,或使用 bq mk 命令复制到永久性的外部 BigQuery 表格)对边界外资源的数据进行读写操作。

    受限 VIP 功能可用于阻止受信任的网络对未与 VPC Service Controls 集成的存储服务的访问。

  3. 配置错误的 Cloud IAM 政策导致的私有数据公开:即使数据因配置错误的 Cloud IAM 政策而公开,VPC Service Controls 也可以拒绝来自未授权网络的访问,从而额外增加一重安全防护。

    通过为 Cloud IAM 分配 Access Context Manager Policy Admin 角色,VPC Service Controls 可由非 Cloud IAM 政策管理员的用户进行配置。

通过为 Google Cloud 组织配置 VPC Service Controls,您可以创建一个广泛且统一的政策,该政策将总是应用于边界内的所有受保护的资源。您仍然可以灵活地处理、转换和复制边界内的数据。安全控制措施会自动应用于在边界内创建的所有新资源。

VPC Service Controls 和元数据

VPC Service Controls 的设计目的不是对元数据移动强制施加全面的控制。

在此上下文中,“数据”的定义是 Google Cloud 资源中存储的内容,例如,Cloud Storage 对象的内容。“元数据”的定义是资源或其父级的属性,例如 Cloud Storage 存储分区名称。

此版本 VPC Service Controls 的主要设计目的是通过支持的服务来控制跨服务边界的数据移动,而不是控制元数据的移动。在大多数情况下,虽然 VPC Service Controls 也会控制对元数据的访问,但仍然可能出现在未经 VPC Service Controls 政策检查的情况下对元数据的复制和访问。

我们建议您借助 Cloud IAM(包括使用自定义角色)来确保适当地控制对元数据的访问。

功能

VPC Service Controls 支持您定义安全政策来阻止访问位于受信任边界外的 Google 托管式服务,阻止访问来自不可信位置的数据并降低数据渗漏的风险,从而提供这些优势。通过此版本 VPC Service Controls,您可以实现以下目的:

将 GCP 资源隔离到多个服务边界内

服务边界围绕着 Google Cloud 资源设置安全边界。您可以配置服务边界,以控制从虚拟机到 Google Cloud 服务 (API) 的通信以及 Google Cloud 服务之间的通信。设置了服务边界后,边界内部资源可自由地进行通信,但默认情况下,跨边界的所有通信都将被阻止。

例如:

  • 作为服务边界一部分的 Virtual Private Cloud (VPC) 网络中的虚拟机可对同一边界内的 Cloud Storage 存储分区进行读写操作。但是,从不在边界内的 VPC 网络访问此存储分区的尝试将被拒绝。

  • 如果两个 Cloud Storage 存储分区位于同一个服务边界内,则这两个存储分区之间的复制操作将成功;但如果其中一个存储分区位于边界外,操作将失败。

  • 作为服务边界一部分的 VPC 网络中的虚拟机可对同一边界内的任何 Cloud Storage 存储分区进行专有访问。但是,虚拟机访问边界外的 Cloud Storage 存储分区时将被拒绝。

将边界扩展到授权 VPN 或 Cloud Interconnect

您可以通过专用 Google 访问通道本地扩展程序配置从跨混合环境的 VPC 网络到 Google Cloud 资源的私密通信。VPC 网络必须是服务边界的一部分,这样,该网络上的虚拟机才能对该服务边界内的托管 Google Cloud 资源进行专有访问。

在作为服务边界一部分的 VPC 网络上,具有专用 IP 地址的虚拟机无法访问服务边界外的托管资源。如果需要,您可以继续允许对所有 Google API(例如 Gmail)的访问,这些访问来自互联网且必须经过检查和审核。

例如,作为服务边界一部分的 VPC 网络中的虚拟机可对同一服务边界内的 Cloud Storage 存储分区进行专有访问。但是,此虚拟机访问该服务边界外的 Cloud Storage 存储分区时将被拒绝。

控制从互联网访问 GCP 资源

默认情况下,从互联网访问服务边界内的托管资源将被拒绝。根据情况,您也可以视请求的上下文来启用访问。为此,您可以创建根据一系列属性(例如来源 IP 地址)控制访问的访问权限级别。如果从互联网发出的请求不符合访问权限级别中定义的条件,则会被拒绝。

要使用 Cloud Console 访问某个边界内的资源,您必须配置一个访问权限级别,以允许从一个或多个 IPv4 和 IPv6 范围进行访问,或访问特定用户帐号。

不支持的服务

如需详细了解 VPC Service Controls 支持的产品和服务,请参阅支持的产品页面。

尝试使用 gcloud 命令行工具或 Access Context Manager API 限制不受支持的服务会导致错误。

VPC Service Controls 将阻止跨项目访问受支持的服务的数据。 此外,受限 VIP 可用于阻止工作负载调用不支持的服务。

术语

在本主题中,您了解了 VPC Service Controls 引入的若干新概念:

VPC Service Controls
借助该技术,您可以围绕 Google 托管服务的资源定义安全边界,以控制与这些服务的通信以及这些服务之间的通信
受限 VIP
受限 VIP 为 VPC Service Controls 支持的产品和 API 提供专用网络路由,以阻止通过互联网对这些产品所用的数据和资源的访问。
restricted.googleapis.com 将解析至 199.36.153.4/30。此 IP 地址范围不公布到互联网。
服务边界
Google 托管的资源的安全边界。允许在边界内自由通信,但默认情况下阻止跨边界的所有通信。
服务边界网桥
边界网桥可允许不同安全边界内的项目进行通信。边界网桥是双向的,允许两侧服务边界内的项目在该网桥的范围内获得同等的访问权限。
Access Context Manager
一项情境感知的请求分类服务,可根据客户端的指定属性(如来源 IP 地址)将请求映射到访问权限级别。
访问权限级别
一种基于多个属性(如来源 IP 范围、客户端设备、地理定位等)的互联网请求分类法。可以配置服务边界以便根据与请求关联的访问权限级别来授予从互联网访问的权限。访问权限级别由 Access Context Manager 服务确定。
访问权限政策
一种定义服务边界的 Google Cloud 资源对象。一个组织中只能有一个访问权限政策对象,它是组织资源的子级。

后续步骤