注册现有的 AWS 账户 - AWS Control Tower

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

注册现有的 AWS 账户

您可以将 AWS Control Tower 的监管范围扩展到个人, AWS 账户 当您将个人注册到已经由 AWS Control Tower 管理的组织单位 (OU) 时,该组织就存在了。符合条件的账户存在于未注册的 OU 中,这些组织与 AWS Control Tower OU 属于同一个 AWS Organizations 组织

注意

除非在初始 landing zone 设置期间,否则您无法注册现有账户作为审核或日志存档账户。

首先设置可信访问权限

在 AWS 账户 将现有账户注册到 AWS Control Tower 之前,您必须授予 AWS Control Tower 管理或监管账户的权限。具体而言,AWS Control Tower 需要获得权限才能 AWS Organizations 在您之间 AWS CloudFormation 和代表您之间建立 AWS CloudFormation 可信访问权限,这样才能将您的堆栈自动部署到所选组织中的账户。凭借这种可信访问权限,该AWSControlTowerExecution角色可以开展管理每个账户所需的活动。因此,在注册之前,您必须将此角色添加到每个账户。

启用可信访问后,只需一次操作 AWS CloudFormation 即可跨多个账户创建、更新或删除堆栈。 AWS 区域 AWS Control Tower 依靠这种信任功能,因此它可以在将现有账户转移到注册的组织单位之前,将角色和权限应用于现有账户,从而对其进行管理。

要了解有关可信访问和的更多信息 AWS CloudFormation StackSets,请参阅AWS CloudFormationStackSets和 AWS Organizations

账户注册期间会发生什么

在注册过程中,AWS Control Tower 会执行以下操作:

  • 为账户设定基准,包括部署以下堆栈集:

    • AWSControlTowerBP-BASELINE-CLOUDTRAIL

    • AWSControlTowerBP-BASELINE-CLOUDWATCH

    • AWSControlTowerBP-BASELINE-CONFIG

    • AWSControlTowerBP-BASELINE-ROLES

    • AWSControlTowerBP-BASELINE-SERVICE-ROLES

    • AWSControlTowerBP-BASELINE-SERVICE-LINKED-ROLES

    • AWSControlTowerBP-VPC-ACCOUNT-FACTORY-V1

    最好查看这些堆栈集的模板,并确保它们不会与现有策略冲突。

  • 通过 AWS IAM Identity Center 或识别账户 AWS Organizations。

  • 将账户放入您指定的 OU 中。请确保应用当前 OU 中应用的所有 SCP,以便您的安全状况保持一致。

  • 通过适用于整个选定组织单位的 SCP 对账户应用强制控制。

  • 启用 AWS Config 并配置它以记录账户中的所有资源。

  • 添加将 AWS Control Tower 侦探控件应用于账户的 AWS Config 规则。

账户和组织级别的跟踪 CloudTrail

无论是否注册,OU 中的所有成员账户都受该 OU 的 AWS CloudTrail 跟踪控制:

  • 当您将账户注册到 AWS Control Tower 时,您的账户将受新组织的 AWS CloudTrail 跟踪管理。如果您已经部署了 CloudTrail 跟踪,则可能会看到重复的费用,除非您在将其注册到 AWS Control Tower 之前删除该账户的现有跟踪。

  • 如果您将账户转移到注册的 OU(例如通过控制 AWS Organizations 台),但您没有继续将该账户注册到 AWS Control Tower,则您可能希望删除该账户的所有剩余账户级别跟踪。如果您已经部署了 CloudTrail 跟踪,则会产生重复的 CloudTrail 费用。

如果您更新了着陆区并选择退出组织级别的跟踪,或者您的着陆区版本低于 3.0,则组织级别的 CloudTrail跟踪不适用于您的账户。

在 VPC 中注册现有账户

当您在 Account Factory 中配置新账户时,AWS Control Tower 对 VPC 的处理方式与注册现有账户时不同。

  • 当您创建新账户时,AWS Control Tower 会自动删除 AWS 默认 VPC 并为该账户创建一个新的 VPC。

  • 当您注册现有账户时,AWS Control Tower 不会为该账户创建新的 VPC。

  • 当您注册现有账户时,AWS Control Tower 不会删除与该账户关联的任何现有 VPC 或 AWS 默认 VPC。

提示

您可以通过配置 Account Factory 来更改新账户的默认行为,因此默认情况下,它不会在 AWS Control Tower 下为您组织中的账户设置 VPC。有关更多信息,请参阅 在没有 VPC 的 AWS Control Tower 中创建账户

如果账户不符合先决条件怎么办?

请记住,作为先决条件,有资格加入 AWS Control Tower 治理的账户必须属于同一个整体组织。要满足账户注册的这一先决条件,您可以按照以下准备步骤将账户转移到与 AWS Control Tower 相同的组织中。

将账户引入与 AWS Control Tower 相同的组织的准备步骤
  1. 将该账户从其现有组织中删除。如果您使用这种方式,则必须提供单独的付款方式。

  2. 邀请该账户加入 AWS Control Tower 组织。有关更多信息,请参阅AWS Organizations 用户指南中的邀请 AWS 账户加入您的组织

  3. 接受邀请。该帐户显示在组织的根目录中。此步骤将账户转移到与 AWS Control Tower 相同的组织中。并建立 SCP 和整合账单。

提示

您可以在账户退出旧组织之前,向新组织发送邀请。当该账户正式退出其现有组织时,将等待邀请。

满足其余先决条件的步骤:
  1. 创建必要的AWSControlTowerExecution角色。

  2. 清除默认 VPC。(这部分是可选的。 AWS Control Tower 不会更改您现有的默认 VPC。)

  3. 通过或删除或修改任何现有的 AWS Config 配置记录器或传送渠道 AWS CloudShell。 AWS CLI 有关更多信息,请参阅资源状态的 AWS Config CLI 命令示例注册拥有现有 AWS Config 资源的账户

完成这些准备步骤后,您可以将该账户注册到 AWS Control Tower。有关更多信息,请参阅 注册账户的步骤。此步骤使该账户进入全面的 AWS Control Tower 管理状态。

取消配置账户的可选步骤,使其可以注册并保留其堆栈
  1. 要保留应用的 AWS CloudFormation 堆栈,请从堆栈集中删除堆栈实例,然后为该实例选择保留堆栈

  2. 在 Account Factory 中终止 AWS Service Catalog 账户配置的产品。(此步骤仅从 AWS Control Tower 中移除已配置的产品。 它不会删除该帐户。)

  3. 根据任何不属于组织的账户的要求,使用必要的账单详细信息设置账户。然后将该账户从组织中移除。(您这样做,这样账户就不会计入您的 AWS Organizations 配额总额。)

  4. 如果仍有资源,请清理账户,然后按照中的账户关闭步骤将其关闭取消账户管理

  5. 如果您有一个带有已定义控件的暂停 OU,则可以将账户移到该处,而不必执行步骤 1。

资源状态的 AWS Config CLI 命令示例

以下是一些用于确定配置记录器和传送渠道状态的 AWS Config CLI 命令示例。

查看命令:

  • aws configservice describe-delivery-channels

  • aws configservice describe-delivery-channel-status

  • aws configservice describe-configuration-recorders

正常的反应是这样的 "name": "default"

删除命令:

  • aws configservice stop-configuration-recorder --configuration-recorder-name NAME-FROM-DESCRIBE-OUTPUT

  • aws configservice delete-delivery-channel --delivery-channel-name NAME-FROM-DESCRIBE-OUTPUT

  • aws configservice delete-configuration-recorder --configuration-recorder-name NAME-FROM-DESCRIBE-OUTPUT

自动注册 AWS Organizations 账户

您可以使用名为 “将现有 AWS 账户注册到 AWS Control Tower” 的博客文章中描述的注册方法,通过编程流程将您的 AWS Organizations 账户注册到 AWS Control Tower。

以下 YAML 模板可以帮助您在账户中创建所需的角色,以便可以通过编程方式进行注册。

AWSTemplateFormatVersion: 2010-09-09 Description: Configure the AWSControlTowerExecution role to enable use of your account as a target account in AWS CloudFormation StackSets. Parameters: AdministratorAccountId: Type: String Description: AWS Account Id of the administrator account (the account in which StackSets will be created). MaxLength: 12 MinLength: 12 Resources: ExecutionRole: Type: AWS::IAM::Role Properties: RoleName: AWSControlTowerExecution AssumeRolePolicyDocument: Version: 2012-10-17 Statement: - Effect: Allow Principal: AWS: - !Ref AdministratorAccountId Action: - sts:AssumeRole Path: / ManagedPolicyArns: - !Sub arn:${AWS::Partition}:iam::aws:policy/AdministratorAccess