通过组织政策服务,您可以对组织的云端资源进行集中编程控制。作为组织政策管理员,您可以配置整个资源层次结构的限制条件。
优势
- 集中控制以配置关于如何使用组织资源的限制。
- 为开发团队界定和建立界限,以确保始终遵从法规。
- 帮助项目所有者及其团队快速行动,无需担心违反法规。
常见使用场景
借助组织政策,您可以执行以下操作:
此外,您还可以通过更多限制条件对组织的资源进行精细控制。如需了解详情,请参阅所有组织政策服务限制条件的列表。
与 Identity and Access Management 的区别
Identity and Access Management 侧重于人,可让管理员授权用户根据权限对特定资源执行操作。
组织政策侧重于什么,管理员可以对特定资源设置限制,以决定它们的配置方式。
组织政策的运作方式
组织政策会配置一个限制一项或多项 Google Cloud 服务的限制条件。组织政策是在组织、文件夹或项目资源上设置的,以便对该资源及其所有子资源强制执行限制。
组织政策包含一条或多条规则,用于指定是否以及如何强制执行限制。例如,组织政策可以包含一条规则,用于仅对标记为 environment=development
的资源强制执行限制条件,另一条规则用于阻止对其他资源强制执行限制条件。
附加了组织政策的资源的后代会继承该组织政策。通过将组织政策应用于组织资源,组织政策管理员可以控制该组织政策的强制执行以及整个组织的限制配置。
限制条件
限制条件是针对某项 Google Cloud 服务或一组 Google Cloud 服务的特定限制类型。您可以将限制条件视为定义受控行为的蓝图,例如,您可以使用 compute.storageResourceUseRestrictions
约束条件限制项目资源访问 Compute Engine 存储资源。
然后,该蓝图作为组织政策应用于资源层次结构中的资源,以实施限制条件中定义的规则。随后,映射到该限制条件并与该资源层次结构节点相关联的 Google Cloud 服务便会实施组织政策中配置的限制。
组织政策是在 YAML 或 JSON 文件中通过其强制执行的限制条件定义的,还可以选择通过强制执行限制条件的条件进行定义。每项组织政策都会在有效模式和/或试运行模式下强制执行恰好一个约束条件。
限制条件的强制执行类型为列表或布尔值,这决定了可用于检查强制执行情况的值。实施的 GCP 服务将评估限制条件类型和值以确定限制。
列表限制条件
列表限制条件允许或禁止组织政策中定义的值列表。该值列表以层次结构子树字符串的形式表示。子树字符串指定了其适用的资源类型。例如,列表约束条件 constraints/compute.trustedImageProjects
采用 projects/PROJECT_ID
形式的项目 ID 列表。
您可以为值添加 prefix:value
形式的前缀,以便为值赋予其他含义:
is:
- 针对确切的值应用比较。此行为与未加前缀时的行为一样;当值包含冒号时,必需使用此前缀。under:
- 对值及其所有子值应用比较。如果允许或拒绝使用该前缀的资源,则其子资源也会被允许或拒绝。提供的值必须是组织、文件夹或项目资源的 ID。in:
- 对包含此值的所有资源应用比较。例如,您可以将in:us-locations
添加到constraints/gcp.resourceLocations
限制条件的拒绝列表中,以屏蔽us
区域中包含的所有位置。
如果您未提供值列表,或者将组织政策设置为 Google 管理的默认值,则限制条件的默认行为将生效,即允许所有值或禁止所有值。
以下组织政策会强制执行一项限制,允许 organizations/1234567890123
中的 Compute Engine 虚拟机实例 vm-1
和 vm-2
访问外部 IP 地址:
name: organizations/1234567890123/policies/compute.vmExternalIpAccess
spec:
rules:
- values:
allowedValues:
- is:projects/project_a/zones/us-central1-a/instances/vm-1
- is:projects/project_b/zones/us-central1-a/instances/vm-2
布尔值限制条件
布尔值限制条件要么强制执行,要么不强制执行。例如,预定义的约束条件 constraints/compute.disableSerialPortAccess
有两种可能的状态:
- 已强制执行 - 强制执行限制条件,并且不允许串行端口访问。
- 未强制执行 - 不强制执行或检查
disableSerialPortAccess
限制条件,因此允许串行端口访问。
如果组织政策设置为 Google 管理的默认政策,则限制条件的默认行为将生效。
以下组织政策会强制执行限制条件,以禁止在 organizations/1234567890123
中创建外部服务账号:
name: organizations/1234567890123/policies/iam.disableServiceAccountCreation
spec:
rules:
- enforce: true
自定义组织政策
自定义组织政策可以允许或限制资源创建和更新,方式与预定义组织政策相同,但允许管理员根据请求参数和其他元数据配置条件。您可以使用政策智能工具测试和分析自定义组织政策。
您可以创建自定义组织政策,并在其中添加限制条件,以限制对特定服务资源(例如 Dataproc NodePool
资源)的操作。如需查看支持自定义限制条件的服务资源列表,请参阅自定义限制条件支持的服务。
如需详细了解如何使用自定义组织政策,请参阅创建和管理自定义组织政策。
托管式限制
受管理的限制条件是基于自定义组织政策平台构建的预定义限制条件。借助自定义组织政策平台,您可以更灵活地设计组织政策,并通过 Policy Intelligence 工具获得更深入的数据分析。
如需详细了解如何使用托管式限制,请参阅使用限制条件。
试运行模式下的组织政策
在试运行模式下,组织政策的创建和强制执行方式与其他组织政策类似,系统会将违反政策的行为记录在审核日志中,但不会拒绝违规操作。
您可以在试运行模式下使用组织政策,以便在政策生效之前监控政策更改对工作流的影响。如需了解详情,请参阅在试运行模式下创建组织政策。
基于条件的组织政策
标记提供了一种根据资源是否有特定标记,有条件地强制执行约束条件的方法。您可以使用标记并有条件地强制执行约束条件,以便集中控制层次结构中的资源。
如需详细了解代码,请参阅代码概览。如需了解如何使用标记设置基于条件的组织政策,请参阅设置带有标记的组织政策。
继承
在某个资源上设置组织政策时,默认情况下,该资源的所有后代都会继承该组织政策。如果您在组织资源上设置组织政策,则该政策定义的限制配置将传递给所有后代文件夹、项目和服务资源。
您可以在后代资源上设置组织政策,该政策可能覆盖继承的政策,也可能继承父级资源的组织政策。在后一种情况下,系统会根据层次结构评估规则合并这两项组织政策。这样,您便能精确控制组织政策在整个组织中的应用方式,以及需要进行例外处理的地方。
如需了解详情,请参阅了解层次结构评估。
违规
违规是指 Google Cloud 服务的行为或状态违反其资源层次结构范围内设置的组织政策限制配置。通常,Google Cloud 服务将实施限制条件来防止违规,但新组织政策的效力不会追溯既往。如果组织政策限制强制追溯既往,则其会在组织政策限制页面上标出。
如果新组织政策对服务所执行的操作或服务所处的状态设定限制,则该政策被视为违规,但服务不会停止其原来的行为。您将需要手动解决该违规问题。这样做可防止新组织政策完全关闭您的业务连续性。
Policy Intelligence
Policy Intelligence 是一套旨在帮助您管理安全政策的工具。这些工具可帮助您了解资源使用情况、了解和改进现有安全政策,以及防止政策配置错误。
某些 Policy Intelligence 工具专门用于帮助测试和分析组织政策服务政策。我们建议您对组织政策的所有更改进行测试和模拟运行。借助政策智能,您可以执行以下任务:
如需详细了解这些工具和其他 Policy Intelligence 工具,请参阅 Policy Intelligence 概览。
后续步骤
- 阅读创建和管理组织资源页面,了解如何获取组织资源。
- 了解如何定义组织政策。
- 探索您可以通过组织政策限制条件实现的解决方案。