范围限定的政策是范围限定于特定文件夹或项目的访问权限政策,以及可应用于整个组织的访问权限政策。您可以使用范围限定的政策将 VPC Service Controls 边界和访问权限级别的管理权委托给文件夹级和项目级管理员。
组织只能在组织级层拥有一个访问权限政策,并且您可以将组织级访问权限政策应用于组织中的任何文件夹或项目。
在某些情况下,您可能需要将组织资源(例如文件夹)的部分政策的管理权委托给受托管理员。您可以创建范围限定于特定文件夹或项目的访问权限政策,以及可应用于整个组织的访问权限政策。如需将 VPC Service Controls 边界和访问权限级别的管理权委托给文件夹级和项目级管理员,您可以使用范围限定的政策。
当您委托管理受限政策时,受委托的管理员可以修改或读取该特定政策,但无法修改或读取组织的 Access Context Manager 政策。受限范围的政策限制了 VPC Service Controls 边界中可以限制的资源,以及任何访问权限级别的可见性。
范围限定的政策管理
作为组织级 Access Context Manager 管理员,您可以创建、修改和删除受限政策。您可以直接在 Access Context Manager 政策中指定身份和访问权限管理 (IAM) 绑定,并允许将 Access Context Manager 政策管理进一步委托给组织中的其他用户。受限政策管理员可以在政策中配置服务边界和访问权限级别。不过,范围限定的政策管理员无法创建新政策,也无法更改政策的范围以应用于其他文件夹或项目。
以下是管理员管理受限政策的顺序:
组织级管理员创建新的访问权限政策,其中范围字段引用特定文件夹或项目。
组织级管理员直接在访问权限政策资源上向委托管理员分配 IAM 权限。受托管理员现在对范围限定的政策拥有权限,但对任何其他政策都没有权限,除非组织级管理员明确将这些权限分配给受托管理员。
受委托的管理员现在可以修改该政策,以配置访问权限级别和服务边界。受托管理员还可以向任何其他用户授予该政策的 IAM 权限。
删除文件夹或项目后,将删除以已删除的文件夹或项目为范围的政策。此外,如果您将项目移至组织层次结构中的其他节点,系统不会自动修改限定于该项目的政策。您必须删除与项目关联的政策,然后重新创建该政策并指定范围。
范围限定的政策层次结构
组织资源是 Google Cloud 资源层次结构的根节点,属于组织的所有资源都作为组织节点的子项存在。文件夹是项目层级之上的分组机制。文件夹和项目是组织资源的子节点。
下图显示了一个示例组织,其中包含每个部门的文件夹,这些文件夹包含开发、测试和生产项目。
在示例组织中,以下约束条件适用于范围限定型政策中的服务边界或访问权限级别:
受限范围政策中的服务边界只能限制该政策范围内存在的资源。例如,范围限定为 engineering 文件夹的政策中的服务边界可以保护 example-dev、example-prod 和 example-test 项目,因为这些项目位于 engineering 文件夹中。
如果范围限定的政策应用于 sales 文件夹,则该政策中的服务边界无法保护任何 example-dev、example-prod 和 example-test 项目。不过,范围限定的政策中的服务边界可以使用入站和出站规则来允许访问其他文件夹中的项目。
范围限定的政策中的访问权限级别仅在该政策的范围内可见。如果您在范围限定为工程文件夹的政策中创建了访问权限级别,则只有工程文件夹中的服务边界和访问权限级别才能使用该访问权限级别。其他文件夹中的服务边界和访问权限级别无法使用“engineering”文件夹中定义的访问权限级别。
example.com 组织资源层次结构中的一个位置(例如文件夹)可以有多个包含访问权限级别或服务边界的政策。存在多个政策时,系统会根据以下规则评估对 example.com 组织中的资源的请求:
一项政策只能包含一个范围(例如文件夹),但您可以为组织的每个级别创建政策。例如,如果政策 1 的范围是“engineering”文件夹,您将无法将“engineering”文件夹设置为任何其他政策的范围。您可以设置另一个政策,并将范围设置为 engineering 文件夹的子文件夹,例如 example-prod。
如果政策的范围适用于项目或项目的父级,您可以将项目添加到该政策中。不过,在所有政策中,一个项目只能属于一个服务边界。例如,将范围设置为组织 example.com 的政策可以使用 example-dev 定义服务边界。将范围设置为“engineering”文件夹或“example-dev”项目的政策也可以将 example-dev 项目添加到其中任一项中定义的边界。不过,这三项政策中只有一项可以包含此项目。