Private Service Connect 安全性

本页面简要介绍了 Private Service Connect 安全性。

Private Service Connect 提供了多项控制,用于管理对 Private Service Connect 资源的访问。您可以控制谁能够部署 Private Service Connect 资源,是否可以在使用方和提供方之间建立连接,以及允许哪些网络流量访问这些连接。

这些控制使用以下元素实现:

图 1 描述了这些控制如何在 Private Service Connect 连接的使用方端和提供方端相互作用。

图 1. IAM 权限、组织政策、接受和拒绝列表以及 VPC 防火墙规则协同工作,有助于保护 Private Service Connect 连接的使用方端和提供方端。

IAM

资源:所有

每个 Private Service Connect 资源都受一项或多项 IAM 权限的约束。这些权限允许管理员强制控制哪些 IAM 主账号可以部署 Private Service Connect 资源。

IAM 不约束哪些 IAM 主账号可以连接到或使用 Private Service Connect 连接。如需控制哪些端点或后端可以与服务建立连接,请使用组织政策或使用方接受列表。如需控制哪些客户端可以将流量发送到 Private Service Connect 资源,请使用 VPC 防火墙或防火墙政策。

如需详细了解 IAM 权限,请参阅 IAM 权限

如需了解创建端点所需的权限,请参阅创建端点

如需了解创建服务连接所需的权限,请参阅发布经过明确批准的服务

连接状态

资源:端点、后端和服务连接

Private Service Connect 端点、后端和服务连接具有连接状态,用于描述其连接的状态。 构成连接两端的使用方和提供方资源始终具有相同的状态。 当您查看端点详细信息描述后端查看已发布服务的详细信息时,您可以查看连接状态。

下表介绍了可能的状态。

连接状态 说明
已接受 已建立 Private Service Connect 连接。两个 VPC 网络具有连接,并且连接正常运行。
待处理

未建立 Private Service Connect 连接,并且网络流量无法在两个网络之间传输。连接可能处于以下状态,原因如下:

由于这些原因而被阻止的连接将无限期地保持在挂起状态,直到根本问题得到解决。

已拒绝

未建立 Private Service Connect 连接。网络流量无法在两个网络之间传输。连接可能处于以下状态,原因如下:

需要注意 连接的提供方端出现问题。某些流量可能能够在两个网络之间流动,但某些连接可能无法正常运行。例如,提供方的 NAT 子网可能已用尽,无法为新连接分配 IP 地址。
不开放

服务连接已删除,Private Service Connect 连接已关闭。网络流量无法在两个网络之间传输。

连接关闭是一种终止状态。如需恢复连接,您必须重新创建服务连接和端点或后端。

服务连接配置

您可以使用以下功能来控制哪些使用方可以连接到服务连接。

连接偏好设置

资源:端点和后端

每个服务连接都有一个连接偏好设置,用于指定是否自动接受连接请求。共有三种处理方式:

  • 自动接受所有连接。服务连接会自动接受来自任何使用方的所有入站连接请求。自动接受可能会被阻止传入连接的组织政策覆盖。
  • 接受选定网络的连接。仅当使用方 VPC 网络在服务连接的使用方接受列表中时,服务连接才会接受入站连接请求。
  • 接受选定项目的连接。仅当使用方项目在服务连接的使用方接受列表中时,服务连接才会接受入站连接请求。

我们建议您接受选定项目或网络的连接。如果您通过其他方式控制使用方访问权限并希望启用对服务的宽松访问权限,则自动接受所有连接可能比较合适。

接受和拒绝列表

资源:端点和后端

使用方接受列表和使用方拒绝列表是服务连接的安全功能。接受和拒绝列表可让服务提供方指定哪些使用方可以建立与其服务的 Private Service Connect 连接。使用方接受列表指定是否接受连接,使用方拒绝列表指定是否拒绝连接。这两个列表都可让您按连接资源的 VPC 网络或项目指定使用方。如果您将某个项目或网络同时添加到接受列表和拒绝列表,则来自该项目或网络的连接请求会被拒绝。 不支持按文件夹指定使用方。

使用方接受列表和使用方拒绝列表可让您指定项目或 VPC 网络,但不能同时指定这两者。您可以在不中断连接的情况下将列表从一种类型更改为另一种类型,但必须在单次更新中进行此项更改。否则,某些连接可能会暂时更改为待处理状态。

更新使用方接受或拒绝列表时,对现有连接的影响因是否启用了连接协调而异。如需了解详情,请参阅连接协调

如需了解如何创建具有使用方接受或拒绝列表的新服务连接,请参阅发布经过明确项目批准的服务

如需了解如何更新使用方接受或拒绝列表,请参阅管理对已发布服务的访问请求

连接限制

资源:端点和后端

使用方接受列表具有连接限制。这些限制会设置服务连接可以从指定的使用方项目或 VPC 网络接受的 Private Service Connect 端点和后端连接的总数。提供方可以使用这些限制来防止个别使用方耗尽提供方 VPC 网络中的 IP 地址或资源配额。每个接受的 Private Service Connect 连接都会从为使用方项目或 VPC 网络配置的限制中减去。这些限制是在您创建更新使用方接受列表时设置的。您可以在描述服务连接时查看其连接。 传播的连接不计入这些限制。

例如,假设一种场景,服务连接具有使用方接受列表,其中包含 project-1project-2,两者的连接限制均为一个。项目 project-1 请求两个连接,project-2 请求一个连接,project-3 请求一个连接。由于 project-1 的连接限制为一个,因此第一个连接会被接受,第二个连接会保持待处理状态。来自 project-2 的连接会被接受,来自 project-3 的连接会保持待处理状态。可通过提高 project-1 的限制接受来自 project-1 的第二个连接。如果将 project-3 添加到使用方接受列表,则该连接会从待处理状态转换为已接受状态。

组织政策

组织政策让您可以全面控制哪些项目使用 Private Service Connect 可以连接到 VPC 网络或组织。

本页面介绍的组织政策可以阻止或拒绝新的 Private Service Connect 连接,但不会影响现有连接。

组织政策适用于它根据层次结构评估而引用的资源的后代。例如,限制对 Google Cloud 组织的访问的组织政策也适用于该组织的子文件夹、项目和资源。同样,将组织列为允许的值也会允许访问该组织的子级。

如需详细了解组织政策,请参阅组织政策

使用方端组织政策

您可以使用列表限制条件来控制端点和后端的部署。如果端点或后端被使用方组织政策阻止,则资源的创建将失败。

  • 使用 restrictPrivateServiceConnectProducer 列表限制条件来控制根据提供方组织可以连接到哪些服务连接端点和后端。
  • 使用 disablePrivateServiceConnectCreationForConsumers 列表限制条件可以根据端点的连接类型来控制端点的部署。您可以阻止部署连接到 Google API 的端点,也可以阻止部署连接到已发布服务的端点。

阻止端点或后端连接到提供方组织

资源:端点和后端

restrictPrivateServiceConnectProducer 列表限制条件与允许的值结合使用的组织政策会阻止端点和后端连接到服务连接,除非服务连接与政策某个允许的值相关联。即使服务连接的使用方接受列表允许连接,此类型的政策也会阻止连接。

例如,以下组织政策适用于名为 Org-A 的组织:

name: organizations/Org-A/policies/compute.restrictPrivateServiceConnectProducer
spec:
  rules:
    – values:
        allowedValues:
        - under:organizations/ORG_A_NUMBER
        - under:organizations/433637338589

图 2 展示了此组织政策的结果。该政策的 Org-A 的允许值为 (ORG_A_NUMBER),Google-org 的允许值为 (433637338589)。在 Org-A 中创建的端点和后端可以与 Org-A 中的服务连接通信,但不能与 Org-B 中的服务连接通信。

图 2. 组织政策允许端点 psc-1 连接到服务连接 sa-1,并阻止 psc-3 连接到 Org-B 中的服务连接。Org-A 中的端点和后端可以连接到 Google 拥有的服务连接。

您可以使用 compute.restrictPrivateServiceConnectProducer 限制条件来允许以下类型的资源实例创建端点:

  • 组织
  • 文件夹
  • 项目

如需了解如何创建使用 compute.restrictPrivateServiceConnectProducer 限制条件的组织政策,请参阅阻止端点和后端连接到未经授权的服务连接

按连接类型阻止创建端点

受影响的资源:端点

您可以使用 disablePrivateServiceConnectCreationForConsumers 列表限制条件来根据端点是否连接到 Google API 或已发布的服务(服务连接)来阻止创建端点。

如需了解如何创建使用 disablePrivateServiceConnectCreationForConsumers 限制条件的组织政策,请参阅阻止使用方按连接类型部署端点

提供方端组织政策

受影响的资源:端点和后端

您可以将组织政策compute.restrictPrivateServiceConnectConsumer 列表限制条件结合使用来控制哪些端点和后端可以连接到提供方组织或项目中的 Private Service Connect 服务连接。 如果端点或后端被提供方组织政策拒绝,则资源的创建会成功,但连接会进入被拒绝状态。

以这种方式控制访问与使用接受和拒绝列表类似,区别在于组织政策适用于项目或组织中的所有服务连接,而不是个别服务连接。

您可以将组织政策和接受列表结合使用,组织政策全面强制控制对代管式服务的访问,接受列表控制对个别服务连接的访问。

使用 compute.restrictPrivateServiceConnectConsumer 限制条件的组织政策会拒绝来自端点和后端的连接,除非端点或后端与政策允许的值之一相关联。即使许可名单允许连接,此类型的政策也会拒绝连接。

例如,以下组织政策适用于名为 Org-A 的组织:

name: organizations/Org-A/policies/compute.restrictPrivateServiceConnectConsumer
spec:
  rules:
    - values:
        allowedValues:
        - under:organizations/ORG_A_NUMBER

图 3 展示了此组织政策的结果。该政策的 Org-A 的允许值为 (ORG_A_NUMBER)。Org-A 中其他 VPC 网络的端点可以连接到 Org-A 中的服务连接。Org-B 中尝试连接的端点会被拒绝。

图 3.组织政策允许 psc-1 连接到 sa-1,而阻止 psc-2 进行连接。

组织政策适用于它根据层次结构评估而引用的资源的后代。例如,限制对 Google Cloud 组织的访问的组织政策也适用于该组织的子文件夹、项目和资源。同样,将组织列为允许的值也会允许访问该组织的子级。

您可以使用 restrictPrivateServiceConnectConsumer 限制条件来允许以下类型的资源实例创建端点:

  • 组织
  • 文件夹
  • 项目

如需详细了解如何将组织政策与服务提供方结合使用,请参阅提供方组织政策

接受列表与组织政策之间的相互作用

使用方接受列表和组织政策都会控制是否可以在两个 Private Service Connect 资源之间建立连接。如果接受列表或组织政策拒绝连接,则系统会阻止连接。

例如,可以将使用 restrictPrivateServiceConnectConsumer 限制条件的政策配置为阻止来自提供方组织外部的连接。即使服务连接配置为自动接受所有连接,组织政策仍会阻止来自提供方组织外部的连接。我们建议同时使用接受列表和组织政策以帮助提供分层安全性。

防火墙

资源:所有

您可以使用 VPC 防火墙规则和防火墙政策来控制对 Private Service Connect 资源的网络级访问。

如需从整体上详细了解 VPC 防火墙规则,请参阅 VPC 防火墙规则

如需详细了解如何使用 VPC 防火墙规则限制对使用方 VPC 网络中的端点或后端的访问,请参阅使用防火墙规则限制对端点或后端的访问