本页面介绍了如何在入站流量规则和出站流量规则中使用身份群组和第三方身份。
本页包含以下示例,展示了如何在入站流量规则和出站流量规则中使用身份群组:
- 允许 Cloud Run 通过互联网访问身份群组成员,以及从列入许可名单的 IP 地址范围访问特定服务账号。
允许 Cloud Run 访问身份群组成员和特定服务账号
下图显示了来自特定身份群组且 IP 地址位于列入许可名单的 IP 地址范围内的用户如何在服务边界内访问 Cloud Run:
假设您已定义以下服务边界:
name: accessPolicies/222/servicePerimeters/Example status: resources: - projects/111 restrictedServices: - run.googleapis.com - artifactregistry.googleapis.com vpcAccessibleServices: enableRestriction: true allowedServices: - RESTRICTED_SERVICES title: Example
如需查找贵组织中现有服务边界的详细信息,请使用 gcloud CLI 命令描述服务边界。
在此示例中,我们还假设您已定义以下资源:
- 一个名为
[email protected]
的身份群组,其中包含您希望在边界内向其提供 Cloud Run 访问权限的用户。 - 在与服务边界相同的访问权限政策中,有一个名为
CorpDatacenters
的访问权限级别。CorpDatacenters
包含企业数据中心中允许服务账号发出请求的许可 IP 地址范围。
以下入站流量政策 ingress.yaml
允许 Cloud Run 访问特定的用户账号(属于 [email protected]
群组)和特定的服务账号,并限制仅在许可 IP 地址范围内访问:
- ingressFrom: identities: - serviceAccount:[email protected] sources: - accessLevel: accessPolicies/222/accessLevels/CorpDatacenters ingressTo: operations: - serviceName: run.googleapis.com methodSelectors: - method: "*" resources: - "*" - ingressFrom: identities: - group:[email protected] sources: - accessLevel: "*" ingressTo: operations: - serviceName: run.googleapis.com methodSelectors: - method: "*" resources: - "*"
如需应用入站流量规则,请运行以下命令:
gcloud access-context-manager perimeters update Example --set-ingress-policies=ingress.yaml