SCP评估 - Amazon Organizations
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

SCP评估

注意

此部分中的信息适用于管理策略类型,包括 AI 服务选择退出策略、备份策略或标签策略。有关更多信息,请参阅 了解管理策略继承

由于您可以在中附加不同级别的多个服务控制策略 (SCPs) Amazon Organizations,因此了解评估SCPs方式可以帮助您编写SCPs得出正确结果的内容。

如何SCPs使用 “允许”

允许特定账户获得权限,在从根到账户直接路径中的每个 OU(包括目标账户本身),每个级别都必须有显式Allow语句。这就是为什么在启用SCPs时会 Amazon Organizations 附加一个名为 F 的 Amazon 托管SCP策略ullAWSAccess,该策略允许所有服务和操作。如果该政策在组织的任何级别被删除且未被替换,则该级别下的所有OUs和账户都将被禁止采取任何行动。

例如,我们来看一下图 1 和图 2 所示的场景。要允许账户 B 的权限或服务,应将允许SCP该权限或服务的权限或服务附加到 Root、生产 OU 和账户 B 本身。

SCP评估遵循 deny-by-default 模型,这意味着中未明确允许的任何权限SCPs都将被拒绝。如果SCPs在任何级别(例如根、生产 OU 或账户 B)中都没有允许声明,则访问将被拒绝。

注意
  • 中的Allow语句只SCP允许该Resource元素有一个"*"条目。

  • 中的Allow语句根本SCP不能有Condition元素。

Organizational structure diagram showing Root, OU, and Member accounts with SCP permissions.

图 1:在根、生产 OU 和账户 B 处附加 Allow 语句的组织结构示例

Organizational structure with Root, OUs, and member accounts showing SCP allow and deny actions.

图 2:生产 OU 中缺少 Allow 语句的组织结构示例及其对账户 B 的影响

如何SCPs使用 “拒绝”

拒绝特定账户的权限,SCP从根账户到账户直接路径中的每个 OU(包括目标账户本身)都可以拒绝该权限。

例如,假设生产 OU 中有一个SCP附件,它为给定服务指定了明确的Deny语句。Root 和账户 B 上还恰好有另一个SCP附加项,它明确允许访问相同的服务,如图 3 所示。因此,账户 A 和账户 B 都将被拒绝访问该服务,因为将针对组织下的所有账户OUs和成员账户评估附加到组织中任何级别的拒绝策略。

Organizational structure showing Root, OUs, and member accounts with SCP permissions.

图 3:生产 OU 中附加了 Deny 语句的组织结构示例及其对账户 B 的影响

使用策略 SCPs

在撰写时,SCPs您可以结合使用AllowDeny语句来允许在组织中执行预期的操作和服务。 Deny报表是实施限制的有力方法,应该适用于组织中的更广泛部分,或者OUs因为当它们应用于根级或 OU 级别时,它们会影响其下的所有帐户。

例如,您可以使用Deny语句 阻止成员账户退出组织在根级别实施策略,该策略将对组织中的所有账户生效。拒绝语句还支持条件元素,这有助于创建例外情况。

提示

您可以使用中的服务上次访问数据IAM来更新您的数据SCPs,将访问权限限制为仅您需要 Amazon Web Services 服务 的内容。有关更多信息,请参阅《IAM用户指南》中的 “查看组织服务上次访问数据”。

Amazon Organizations 创建后,将SCP名为 F ullAWSAccess 的 Amazon 托管账号附加到每个根目录、组织单位和账户。此策略允许所有服务和操作。您可以将 F ullAWSAccess 替换为仅允许一组服务的策略,这样除非通过更新明确允许新 Amazon Web Services 服务 服务,否则不允许使用新服务SCPs。例如,如果您的组织只想允许在您的环境中使用部分服务,则可以使用 Allow 语句来仅允许特定服务。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:*", "cloudwatch:*", "organizations:*" ], "Resource": "*" } ] }

将两个语句组合在一起的策略可能与以下示例类似,它阻止成员账户离开组织并允许使用所需的 Amazon 服务。组织管理员可以分离 F ullAWSAccess 策略并改为附加此策略。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:*", "cloudwatch:*", "organizations:*" ], "Resource": "*" }, { "Effect": "Deny", "Action":"organizations:LeaveOrganization", "Resource": "*" } ] }

现在,考虑以下示例组织结构,以了解如何在组织中的不同SCPs级别上应用多个组织结构。

Organizational structure diagram showing Root, OUs, and member accounts in a hierarchical layout.

下表显示了沙盒 OU 中的有效策略。

场景 SCPat root SCP在 Sandbox OU SCP在账户 A 账户 A 处生成的策略 账户 B账户 C 处生成的策略
1 完全 Amazon 访问权限 完全 Amazon 访问权限 + 拒绝 S3 访问权限 完全 Amazon 访问权限 + 拒绝EC2访问 没有 S3,没有EC2访问权限 没有 S3 访问
2 完全 Amazon 访问权限 允许EC2访问 允许EC2访问 允许EC2访问 允许EC2访问
3 拒绝 S3 访问 允许 S3 访问 完全 Amazon 访问权限 无服务访问 无服务访问

下表显示了工作负载 OU 中的有效策略。

场景 SCPat root SCPat 工作负载 OU SCP在测试中 OU 账户 D 处生成的策略 生产 OU、账户 E账户 F 处生成的策略
1 完全 Amazon 访问权限 完全 Amazon 访问权限 完全 Amazon 访问权限 + 拒绝EC2访问 无法EC2访问 完全 Amazon 访问权限
2 完全 Amazon 访问权限 完全 Amazon 访问权限 允许EC2访问 允许EC2访问 完全 Amazon 访问权限
3 拒绝 S3 访问 完全 Amazon 访问权限 允许 S3 访问 无服务访问 无服务访问