AWS Organizations 常见问题

一般性问题

AWS Organizations 有助于您在 AWS 上扩展工作负载时对您的环境进行集中管理。无论您是一个成长型初创公司还是一个大型企业,Organizations 都能帮助您以编程方式创建新账户和分配资源,通过为所有账户设置单个付款方式简化计费,创建账户组以组织您的工作流,并将策略应用于这些组进行治理。另外,AWS Organizations 与其他 AWS 服务进行了集成,以便在您的组织中跨账户指定中央配置、安全机制和资源共享。

借助 AWS Organizations,可以实现以下功能:

  • 通过 AWS CloudFormation Stacksets,实现 AWS 账户创建和管理的自动化,并预置资源
  • 通过 AWS 安全服务的策略和管理来维护安全环境
  • 管理 AWS 服务、资源和区域的访问权
  • 针对多个 AWS 账户集中管理策略
  • 审核环境的合规性 
  • 使用整合账单查看和管理成本 
  • 对多个账户配置 AWS 服务

AWS Organizations 现已在所有 AWS 商业区域、AWS GovCloud(美国)区域和中国区域推出。AWS Organizations 的服务终端节点位于美国东部(弗吉尼亚北部),适用于商业组织;AWS GovCloud(美国西部),适用于 AWS GovCloud(美国)组织;以及由西云数据运营的 AWS 中国(宁夏)区域。

首先,您必须先确定将哪个 AWS 账户作为管理账户(之前称为主账户)。您可以创建新 AWS 账户或选择现有账户。

  1. 使用您要用于管理组织的 AWS 账户,以管理员身份登录 AWS 管理控制台
  2. 导航至 AWS Organizations 控制台。
  3. 选择创建组织
  4. 选择您要为组织启用的功能。所有功能仅整合账单功能。 如果您想利用 AWS Organizations 的所有集中管理功能,建议您选择所有功能
  5. 使用以下两种方法之一将 AWS 账户添加到您的组织: 
    1. 通过现有 AWS 账户的 AWS 账户 ID 或关联的电子邮件地址邀请其加入您的组织。
    2. 创建新的 AWS 账户。
  6. 通过将您的 AWS 账户分组到 OU 中来塑造您的组织层次结构。
  7. 为 OU、账户或组织(仅适用于所有功能组织)创建策略(如服务控制策略或备份策略)。
  8. 启用与 AWS Organizations 集成的 AWS 服务

您还可以使用 AWS CLI(针对命令行访问)或开发工具包执行相同的步骤来创建新组织。

注意:您只能使用并非其他组织成员的 AWS 账户开始创建新组织。

有关更多信息,请参阅 AWS Organizations 入门

AWS Control Tower

AWS Control Tower 基于 AWS Organizations 等 AWS 服务构建,提供设置和管理新的安全多账户 AWS 环境的最简单方法。它建立了一个登录区,这是一个基于最佳实践蓝图的架构完善的多账户环境,并使用您可以选择的护栏实现监管。护栏是实施安全性、合规性和操作监管的 SCP 和 AWS Config 规则。

AWS Control Tower 基于 AWS Organizations 提供抽象、自动化和规范性的体验。它自动将 AWS Organizations 设置为底层 AWS 服务,以组织账户并使用 SCP 实施预防性护栏。Control Tower 和 Organizations 可以很好地协同工作。您可以使用 Control Tower 设置环境和护栏,然后通过 AWS Organizations,您可以进一步创建自定义策略(如标签、备份或 SCP),集中控制跨多个 AWS 账户使用 AWS 服务和资源。

护栏是针对安全性、操作和合规性的预打包 SCP 和 AWS Config 监管规则,客户可以选择并应用于企业范围或特定的账户组。护栏以通俗易懂的英语表示,并为您的 AWS 环境实施特定的监管策略,该策略可在组织单位 (OU) 内启用。

AWS Control Tower 适用于希望使用内置最佳实践创建或管理其多账户 AWS 环境的客户。它为大规模管理您的 AWS 环境提供了规范性指导,并使您可以在不牺牲 AWS 为构建者提供的速度和敏捷性的情况下控制您的环境。如果您正在构建新的 AWS 环境,从 AWS 之旅开始,启动新的云计划,对 AWS 完全陌生,或者拥有现有的多账户 AWS 环境,您将从 AWS Control Tower 获益。

核心概念

组织是指一系列 AWS 账户,您可以将其整理为一个层次结构并进行集中管理。

AWS 账户是您 AWS 资源的容器。您可以在 AWS 账户中创建和管理您的 AWS 资源,且 AWS 账户会提供访问和计费等管理功能。

使用多个 AWS 账户是扩展您的环境的最佳做法,因为它为成本提供了自然的计费边界,隔离了安全资源,提供了灵活性或个人和团队,同时还能适应新的业务流程。

管理账户指您用于创建组织的 AWS 账户。使用管理账户,您可以在组织内创建其他账户,邀请其他账户加入您的组织并对此类邀请进行管理,以及从您的组织中删除账户。您还可以将策略与组织内的管理根、组织单元 (OU) 或账户等实体关联。管理账户是组织的最终拥有者,对安全性、基础设施和财务策略拥有最终控制权。该账户将承担付款人账户的职责,并负责支付其组织内所有账户产生的全部费用。您不能更改组织内的那个账户为管理账户。

成员账户是除管理账户以外的 AWS 账户,是组织的一部分。如果您是某个组织的管理员,您可以在该组织内创建成员账户,也可以邀请现有账户加入该组织。您还可以对成员账户应用策略。一个成员账户一次只能属于一个组织。

管理根包含在管理账户中,是整理 AWS 账户的起始点。管理根是组织层次结构中最顶层的容器。在此根下,您可以创建 OU 以对账户进行逻辑分组,并将这些 OU 整理到最能满足您的业务需求的层次结构中。

组织单元 (OU) 是组织内的一组 AWS 账户。OU 还可以包含允许您创建层次结构的其他 OU。例如,您可以将属于同一个部门的所有账户都归组到一个部门 OU。同样地,您也可以将运行安全服务的所有账户归组到一个安全 OU。当您需要对组织内的一组账户应用相同的控制时,OU 则非常有用。嵌套 OU 能够实现更小的管理单位。例如,您可以为每个工作负载创建 OU,然后在每个工作负载 OU 中创建两个嵌套 OU,以将生产工作负载与生产前工作负载分开。除直接指定给这些团队级 OU 的所有控制外,它们还会继承父 OU 的策略。

策略是指含有一个或多个语句的“文档”,这些语句用于定义您要应用于某组 AWS 账户的控件。AWS Organizations 支持以下策略:

  • 备份策略 – 需要以指定的频率上进行 AWS 备份
  • 标记策略 – 定义标记密钥和允许的值
  • AI 服务选择退出策略 – 控制 AI 服务存储或使用内容的方式
  • 服务控制策略 (SCP) – SCP 可定义 AWS 服务操作(如 Amazon EC2 RunInstances),这些操作可在组织内的不同账户中使用。

整理 AWS 账户

除在中国管理的组织外,所有组织实体均已实现全球可访问性,运行方式与 AWS Identity and Access Management (IAM) 目前的运行方式类似。在创建和管理组织时,您无需指定 AWS 区域,但您需要为中国使用的账户创建单独的组织。AWS 账户中的用户可以在提供 AWS 服务的所有地理区域使用此项服务。

不能。您不能更改用作管理账户的 AWS 账户。因此,请务必谨慎选择管理账户。

请使用以下两种方法之一向您的组织添加 AWS 账户:

方法 1:邀请现有账户加入您的组织

1.以管理账户管理员的身份登录,然后导航至 AWS Organizations 控制台。

2.选择“Accounts”选项卡。

3.选择“Add account”,然后选择“Invite account”。

4.提供您要邀请的账户的电子邮件地址或该账户的 AWS 账户 ID。

注意:您可以邀请多个 AWS 账户,列出所有电子邮件地址或 AWS 账户 ID 并使用逗号将其分隔开来即可。

指定的 AWS 账户将收到一封邀请其加入您组织的电子邮件。受邀 AWS 账户的管理员必须使用 AWS Organizations 控制台、AWS CLI 或 AWS Organizations API 来接受或拒绝请求。如果相应的管理员接受了您的邀请,其账户便会出现在您组织的成员账户列表中。SCP 等任何适用策略都会在新添加的账户中自动执行。例如,如果您的组织将 SCP 与组织的根关联,系统将为新创建的账户直接执行 SCP。

方法 2:在您的组织内创建 AWS 账户

1.以管理账户管理员的身份登录,然后导航至 AWS Organizations 控制台。

2.选择“Accounts”选项卡。

3.选择“Add account”,然后选择“Create account”。

4.为账户提供一个名称和一个电子邮件地址。

您也可以使用 AWS 开发工具包或 AWS CLI 创建账户。对于这两种方法,添加新账户后,您可以将其移动到组织单元 (OU)。新账户会自动继承与 OU 关联的策略。

不能。一个 AWS 账户一次只能是一个组织的成员。

在 AWS 账户创建过程中,AWS Organizations 会创建一个 IAM 角色,该角色拥有新账户的全部管理权限。主账户中拥有相应权限的 IAM 用户和 IAM 角色可以担任此 IAM 角色,以获得访问新建账户的权限。

不,当前不支持。

符合。但您必须首先将该账户从您的组织内移除,使之成为独立账户 (见下文)。将该账户变成独立账户后,即可邀请它加入其它组织。

符合。当您使用 AWS Organizations 控制台、API 或 CLI 命令在组织内创建账户时,AWS 仅收集创建独立账户所需的提供的部分信息。对于您要将其变成独立账户的每个账户,您需要更新此信息,其中可以包括:提供联系信息、提供有效付款方式,以及选择支持计划选项。AWS 将使用该付款方式收取账户未绑定到组织期间发生的所有应收费 (非 AWS 免费套餐) AWS 活动的费用。有关更多信息,请参阅从组织中删除成员账户

这要视具体情况而定。如果需要更多账户,请前往 AWS Support 中心,打开支持案例申请增加账户数。

您可以通过以下两种方法删除成员账户:要删除使用 Organizations 创建的账户,您可能还需要提供额外的信息。如果尝试删除账户失败,请前往 AWS Support 中心,寻求有关删除账户的帮助。

方法 1:通过登录管理账户删除受邀成员账户

1.以主账户管理员的身份登录,然后导航至 AWS Organizations 控制台。

2.在左窗格中,选择账户

3.选择要删除的账户,然后选择删除账户

4.如果相应的账户没有有效的付款方式,您必须提供一种付款方式。

方法 2:通过登录成员账户删除受邀成员账户

1.以管理员身份登录您要从组织中删除的成员账户。

2.导航至 AWS Organizations 控制台。

3.选择*退出组织*。

4.如果相应的账户没有付款方式,您必须提供一种付款方式。

要创建 OU,请执行以下操作:

1.以管理账户管理员的身份登录,然后导航至 AWS Organizations 控制台。

2.选择组织账户选项卡。

3.在层次结构中导航至您要创建 OU 的位置。您可以直接在根下创建,也可以在其他 OU 中创建。

4.选择创建组织部门,为该 OU 提供名称。该名称在您的组织内必须是唯一的。

注意:稍后您可以重命名该 OU。

现在,您可以向该 OU 添加 AWS 账户了。您也可以使用 AWS CLI 和 AWS API 创建和管理 OU。

请按照以下步骤将成员账户添加到 OU:

1.在 AWS Organizations 控制台中,选择“Organize accounts”选项卡。

2.选择相应的 AWS 账户,然后选择“Move account”。

3.在对话框中,选择要将 AWS 账户移至的 OU。

或者,您也可以使用 AWS CLI 和 AWS API 将 AWS 账户添加到 OU。

不可以。一个 AWS 账户一次只能是一个 OU 的成员。

不可以。一个 OU 一次只能是一个 OU 的成员。

您可以将 OU 嵌套 5 层。包括在最低 OU 中创建的根账户和 AWS 账户在内,您的层次结构可以为 5 层。

控制管理

您可以将策略关联到组织的根 (应用于组织内的所有账户)、各个组织单元 (OU) (应用于包括嵌套 OU 在内的 OU 中的所有账户) 或各个账户。

您可以使用以下两种方法之一关联策略:

  • 在 AWS Organizations 控制台中,导航至要为其指定策略的实体(根、OU 或某个账户),然后选择附加策略
  • 在 Organizations 控制台中,选择策略选项卡,然后执行以下任一操作:
    选择某个现有策略,从操作下拉菜单中选择附加策略,然后选择要为其附加相应策略的根、OU 或账户。
  • 选择创建策略,然后在创建策略的工作流程中,选择要附加新策略的根、OU 或账户。

有关更多信息,请参阅管理策略

符合。例如,假设您已按照应用程序开发阶段 (开发、测试和生产) 将您的 AWS 账户整理到不同 OU 中。策略 P1 已关联到组织的根,策略 P2 已关联到 DEV OU,且策略 P3 已关联到 DEV OU 中的 AWS 账户 A1。在此设置下,P1、P2 和 P3 均会应用于账户 A1。
有关更多信息,请参阅关于服务控制策略

目前,AWS Organizations 支持以下策略:

  • 备份策略 – 需要使用 AWS Backup 以指定的频率进行备份
  • 标记策略 – 定义标记密钥和允许的值
  • AI 服务选择退出策略 – 控制 AI 服务从组织存储或使用内容的方式
  • 服务控制策略 (SCP) – 定义并执行 IAM 用户、组和角色在应用 SCP 的账户中可以执行的操作

您可以使用服务控制策略 (SCP) 来控制您组织的账户中委托人(账户根、IAM 用户和 IAM 角色)可以访问哪些 AWS 服务操作。在决定账户中哪些委托人可以访问资源以向账户中的委托人授予访问资源的权限时,SCP 是必要条件,但不是充分条件。在已关联 SCP 的账户中,委托人的有效权限是 SCP 明确允许的操作与关联到该委托人的权限所明确允许操作的交集。例如,如果应用于某个账户的 SCP 指明允许的操作仅包括 Amazon EC2 操作,但同一个 AWS 账户中的委托人权限同时允许 EC2 操作和 Amazon S3 操作,则该委托人将仅可访问 EC2 操作。
成员账户中的委托人 (包括成员账户的根用户) 不能删除或更改应用于该账户的 SCP。 

SCPs 遵循与 IAM 策略相同的规则和语法。有关 SCP 语法的信息,请参阅 SCP 语法。关于 SCP 示例,请参阅服务控制策略示例。 

 "Version":"2012-10-17", 

 "Statement":[ 

 { 

 "Effect":"Allow", 

 "Action":["EC2:*","S3:*"], 

 "Resource":"*" 

 } 

 ) 

 }

黑名单示例
以下 SCP 允许访问除 S3 操作 (PutObject) 之外的所有 AWS 服务操作。在应用此 SCP 的账户中,为其直接指定相应权限的所有委托人 (账户根、IAM 用户和 IAM 角色) 可以访问除 S3 PutObject 操作之外的任何操作。 

 "Version":"2012-10-17", 

 "Statement":[ 

 { 

 "Effect":"Allow", 

 "Action": "*:*", 

 "Resource":"*" 

 }, 

 { 

 "Effect":"Deny", 

 "Action":"S3:PutObject", 

 "Resource":"*" 

 } 

 ) 

 }

有关更多示例,请参阅使用 SCP 的策略

不是。SCP 的行为与 IAM 策略相同:一条空 IAM 策略等同于默认拒绝。将空 SCP 与某个账户关联相当于关联一条明确拒绝所有操作的策略。

在应用了 SCP 的 AWS 账户中授予委托人(账户根、IAM 用户和 IAM 角色)的有效权限是 SCP 所允许的权限与 IAM 权限策略授予委托人的权限的交集。例如,如果某个 IAM 用户拥有 "Allow": "ec2:* " 和 "Allow": "sqs:* ",与账户关联的 SCP 拥有 "Allow": "ec2:* " 和 "Allow": "s3:* ",则该 IAM 用户的最终权限为 "Allow": "ec2:* ",该委托人无法执行任何 Amazon SQS (SCP 不允许) 操作或 S3 操作 (IAM 策略不允许)。

能,IAM 策略模拟器可以包含 SCP 的影响。您可以在组织内的成员账户中使用策略模拟器,来了解 SCP 对账户中各个委托人产生的影响。成员账户中拥有适当 AWS Organizations 权限的管理员可以查看 SCP 是否影响您的成员账户中委托人 (账户根、IAM 用户和 IAM 角色) 的访问权限。
有关更多信息,请参阅服务控制策略

符合。由您决定要实施哪些策略。例如,您可以创建一个仅利用整合账单功能的组织。如此一来,您组织中的所有账户便具有一个付款人账户,可以自动享受默认的分级定价优惠。

计费

AWS Organizations 不另外收费。

对于组织内账户的所有使用、数据和资源,由管理账户的拥有者负责支付相关费用。

不能。截至目前,您的账单不能反映出您在组织内定义的结构。您可以在各个 AWS 账户中使用成本分配标签对 AWS 费用进行归类和跟踪,且此项分配会显示在组织的整合账单中。

已集成 AWS 服务

AWS 服务已与 AWS Organizations 集成,从而为客户提供跨组织账户的集中管理和配置。这使您能够从一个地方跨账户管理服务,从而简化了部署和配置。

有关与 AWS Organizations 集成的 AWS 服务的列表,请参阅可与 AWS Organizations 一起使用的 AWS 服务

要开始使用与 AWS Organization 集成的 AWS 服务,在 AWS 管理控制台中导航到该服务并启用集成。