

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

# AWS 账户 在 AWS Control Tower 中简介
<a name="accounts"></a>

 AWS 账户 是您拥有的所有资源的容器。这些资源包括账户接受的 AWS Identity and Access Management (IAM) 身份，这些身份决定了谁有权访问该账户。IAM 身份可以包括用户、组、角色等。有关在 AWS Control Tower 中使用 IAM 用户、角色和策略的更多信息，请参阅 [Identity and access management in AWS Control Tower](https://docs.aws.amazon.com/controltower/latest/userguide/auth-access.html)。

**资源和账户创建时间**

在 AWS Control Tower 创建或注册账户时，会部署该账户所需的最低资源配置。例如，它可能包括 Acco [unt Factory 模板](https://docs.aws.amazon.com//controltower/latest/userguide/account-factory-considerations.html)形式的资源和着陆区中的其他资源，例如 IAM 角色、 AWS CloudTrail 跟踪、S [ervice Catalog 预配置产品](https://docs.aws.amazon.com/servicecatalog/latest/userguide/enduser-dashboard.html)和 IAM Identity Center 用户。AWS Control Tower 还根据控制配置的要求，为其中新账户将成为成员账户的组织单元（OU）部署资源。

AWS Control Tower 代表您编排这些资源的部署。每项资源可能需要几分钟才能完成部署，因此请考虑创建或注册账户之前的总时间。有关管理账户中的资源的更多信息，请参阅 [关于创建和修改 AWS Control Tower 资源的指南](getting-started-guidance.md)。

## AWS Control Tower 创建账户时会发生什么情况
<a name="what-happens-in-account-creation"></a>

AWS Control Tower 中的新账户是通过 AWS Control Tower、 AWS Organizations、和之间的交互创建和 AWS Service Catalog配置的。您可以从 AWS Control Tower 控制台创建账户和注册现有账户。有关 AWS 账户 使用 AWS Control Tower 控制台注册现有控制台的详细步骤，请参阅[从 AWS Control Tower 控制台注册现有账户](quick-account-provisioning.md)。

**账户创建的后台操作**

1. 例如，您可以从 AWS Control Tower Account Factory 页面发起请求，或者直接从 AWS Service Catalog 控制台发起请求，或者通过调用 Service Catalog `ProvisionProduct` API 发起请求。

1. AWS Service Catalog 致电 AWS Control Tower。

1. AWS Control Tower 启动了一个工作流程，该工作流程作为第一步调用 AWS Organizations `CreateAccount` API。

1.  AWS Organizations 创建账户后，AWS Control Tower 通过应用蓝图和控制来完成配置过程。

1. Service Catalog 继续对 AWS Control Tower 进行轮询，以检查预置过程是否已完成。

1. AWS Control Tower 中的工作流完成后，Service Catalog 最终确定账户的状态并将结果通知您（请求者）。

## 引入现有安全账户或日志记录账户方面的注意事项
<a name="considerations-for-existing-shared-accounts"></a>

在接受 AWS 账户 作为安全（默认名称：**审计**）或日志记录（默认名称：**日志档案**）账户之前，AWS Control Tower 会检查该账户中是否存在与 AWS Control Tower 要求相冲突的资源。例如，您可能有一个与 AWS Control Tower 要求的名称相同的日志记录存储桶。此外，AWS Control Tower 还会验证账户是否可以配置资源；例如，通过确保启用 AWS Security Token Service (AWS STS)、账户未被暂停以及 AWS Control Tower 有权在账户内配置资源。

AWS Control Tower 不会移除您提供的日志记录和安全账户中的任何现有资源。但是，如果您选择启用它，则 AWS Control Tower 区域拒绝控件会阻止对被拒绝区域中的资源进行访问。

**账户的安全性**  
您可以在 AWS Organizations 文档中找到有关保护 AWS Control Tower 管理账户和成员账户的安全性的最佳实践指南。  
[管理账户的最佳实践](https://docs.aws.amazon.com//organizations/latest/userguide/orgs_best-practices_mgmt-acct.html)
[成员账户的最佳实践](https://docs.aws.amazon.com/organizations/latest/userguide/best-practices_member-acct.html)

# 关于共享账户
<a name="special-accounts"></a>

三个特殊 AWS 账户 账户与 AWS Control Tower 关联：管理账户、**审计**账户和**日志存档**账户。这些账户通常被称为*共享账户*，有时也被称为*核心账户*。
+  设置登录区时，您可以为审计账户和日志存档账户选择自定义名称。有关更改账户名称的信息，请参阅 [Externally changing AWS Control Tower resource names](https://docs.aws.amazon.com/controltower/latest/userguide/external-resources.html#changing-names)。
+ 在最初的着陆区设置过程中，您还可以将现有账户指定 AWS 账户 为 AWS Control Tower 安全账户或日志账户。此选项使得 AWS Control Tower 无需创建新的共享账户。（这是一次性选择。）

有关共享账户及其关联资源的更多信息，请参阅 [在共享账户中创建的资源](shared-account-resources.md)。

## 管理账户
<a name="mgmt-account"></a>

这将 AWS 账户 启动 AWS Control Tower。默认情况下，该账户的根用户和该账户的 IAM 用户或 IAM 管理员用户拥有对您的登录区内所有资源的完全访问权限。

**注意**  
作为最佳实践，我们建议在 AWS Control Tower 控制台中执行管理功能时以具有**管理员**权限的 IAM Identity Center 用户身份登录，而不是以该账户的根用户或 IAM 管理员用户身份登录。

有关管理账户中可用的角色和资源的更多信息，请参阅 [在共享账户中创建的资源](shared-account-resources.md)。

## 日志存档账户
<a name="log-archive-account"></a>

如果您没有特别携带其他 AWS 帐户，则日志存档共享帐户将在您创建 landing zone 时自动设置。

此账户包含一个中央 Amazon S3 存储桶，用于存储您的着陆区中所有其他账户的副本 AWS CloudTrail 和所有其他账户的 AWS Config 日志文件。作为最佳实践，我们建议限制负责合规和调查的团队及其相关安全或审计工具访问日志存档账户。此账户可用于自动安全审计，也可用于托管自定义 AWS Config 规则函数（例如 Lambda 函数）以执行补救操作。

**Amazon S3 存储桶策略**  
对于 AWS Control Tower 登录区版本 3.3 及更高版本，账户必须满足对审计存储桶的任何写入权限的 `aws:SourceOrgID` 条件。此条件可确保 CloudTrail 只有代表组织内的账户才能将日志写入您的 S3 存储桶；它可以防止组织外部的 CloudTrail 日志写入您的 AWS Control Tower S3 存储桶。有关更多信息，请参阅 [AWS Control Tower 登录区版本 3.3](2023-all.md#lz-3-3)。

有关日志存档账户中可用的角色和资源的更多信息，请参阅 [日志存档账户资源](shared-account-resources.md#log-archive-resources)

**注意**  
无法对这些日志进行更改。存储所有日志的目的都是为了进行与账户活动相关的审计和合规调查。

## 审计账户
<a name="audit-account"></a>

如果您没有专门引入另一个账户，该共享账户将在您创建登录区时自动设置。

审计账户应仅限于安全性与合规性团队，这些团队对登录区中的所有账户具有审计员（只读）和管理员（完全访问权限）跨账户角色。这些角色旨在供安全性与合规性团队用于：
+ 通过 AWS 机制（例如托管自定义 AWS Config 规则 Lambda 函数）执行审计。
+ 执行自动安全操作，例如修正操作。

审计账户还会通过 Amazon Simple Notification Service（Amazon SNS）服务接收通知。可以接收三类通知：
+ **所有配置事件** — 本主题汇总了您的 landing zone 中所有账户的所有 CloudTrail 和 AWS Config 通知。
+ **聚合安全通知**-此主题汇总了来自特定 CloudWatch 事件、合 AWS Config 规则 规性状态变更事件和 GuardDuty 发现的所有安全通知。
+ **漂移通知** — 本主题汇总了在所有账户、用户和您的 landing zone SCPs 中发现的所有漂移警告。 OUs有关偏移的更多信息，请参阅[在 AWS Control Tower 中检测并解决偏移问题](drift.md)。

在成员账户内触发的审计通知也可以向本地 Amazon SNS 主题发送提醒。此功能允许账户管理员订阅特定于个人成员账户的审计通知。因此，管理员可以解决影响个人账户的问题，同时仍可将所有账户通知汇总到您的集中审计账户。有关更多信息，请参阅 [Amazon Simple Notification Service 开发人员指南](https://docs.aws.amazon.com/sns/latest/dg/)。

有关审计账户中可用的角色和资源的更多信息，请参阅 [审计账户资源](shared-account-resources.md#audit-account-resources)。

有关编程审计的更多信息，请参阅 [Programmatic roles and trust relationships for the AWS Control Tower audit account](https://docs.aws.amazon.com//controltower/latest/userguide/roles-how.html#stacksets-and-roles)。

**重要**  
您为审计账户提供的电子邮件地址会收到来自 AWS Control Tower 支持的每个 AWS 区域 的 **AWS 通知 - 订阅确认**电子邮件。要在您的审计账户中接收合规电子邮件，您必须从 AWS Control Tower AWS 区域 支持的每封电子邮件中选择 “**确认订阅**” 链接。

# 在共享账户中创建的资源
<a name="shared-account-resources"></a>

本部分介绍在您设置登录区时 AWS Control Tower 在共享账户中创建的资源。

有关成员账户资源的信息，请参阅 [Account Factory 的资源注意事项](account-factory-considerations.md)。

## 管理账户资源
<a name="mgmt-account-resouces"></a>

设置 landing zone 时，将在您的管理账户中创建以下 AWS 资源。


| AWS 服务 | 资源类型 | 资源名称 | 
| --- | --- | --- | 
| AWS Organizations | 账户 | audit log archive | 
| AWS Organizations | OUs | Security Sandbox | 
| AWS Organizations | 服务控制策略 | aws-guardrails-\$1  | 
| AWS CloudFormation | 堆栈 | AWSControlTowerBP-BASELINE-CLOUDTRAIL-MASTER AWSControlTowerBP-BASELINE-CONFIG-MASTER（在版本 2.6 及更高版本中） | 
| AWS CloudFormation | StackSets |  AWSControlTowerBP-BASELINE-CLOUDTRAIL（在版本 3.0 及更高版本中未部署） AWSControlTowerBP\$1BASELINE\$1SERVICE\$1LINKED\$1ROLE (Deployed in 3.2 and later) AWSControlTowerBP-BASELINE-CLOUDWATCH AWSControlTowerBP-BASELINE-CONFIG AWSControlTowerBP-BASELINE-ROLES AWSControlTowerBP-BASELINE-SERVICE-ROLES AWSControlTowerBP-SECURITY-TOPICS AWSControlTowerGuardrailAWS-GR-AUDIT-BUCKET-PUBLIC-READ-PROHIBITED AWSControlTowerGuardrailAWS-GR-AUDIT-BUCKET-PUBLIC-WRITE-PROHIBITED AWSControlTowerLoggingResources AWSControlTowerSecurityResources AWSControlTowerExecutionRole  | 
| AWS Service Catalog | 产品 | AWS Control Tower Account Factory | 
| AWS Config | 聚合器 | aws-controltower-ConfigAggregatorForOrganizations | 
| AWS CloudTrail | 试用 | aws-controltower-BaselineCloudTrail | 
| Amazon CloudWatch | CloudWatch 日志 | aws-controltower/CloudTrailLogs | 
| AWS Identity and Access Management | 角色 | AWSControlTowerAdmin AWSControlTowerStackSetRole AWSControlTowerCloudTrailRolePolicy | 
| AWS Identity and Access Management | 策略 | AWSControlTowerServiceRolePolicy AWSControlTowerAdminPolicy AWSControlTowerCloudTrailRolePolicy AWSControlTowerStackSetRolePolicy | 
| AWS IAM Identity Center | 目录组 | AWSAccount工厂 AWSAuditAccountAdmins AWSControlTowerAdmins AWSLogArchiveAdmins AWSLogArchiveViewers AWSSecurityAuditors AWSSecurityAuditPowerUsers AWSServiceCatalogAdmins  | 
| AWS IAM Identity Center | 权限集 | AWSAdministratorAccess AWSPowerUserAccess AWSServiceCatalogAdminFullAccess AWSServiceCatalogEndUserAccess AWSReadOnlyAccess AWSOrganizationsFullAccess  | 

**注意**  
未在 CloudFormation StackSet `BP_BASELINE_CLOUDTRAIL` landing zone 版本 3.0 或更高版本中部署。但是，在您更新登录区之前，它会继续存在于早期版本的登录区中。

## 日志存档账户资源
<a name="log-archive-resources"></a>

设置 landing zone 时，将在您的日志存档账户中创建以下 AWS 资源。


| AWS 服务 | 资源类型 | 资源名称 | 
| --- | --- | --- | 
| AWS CloudFormation | 堆栈 | StackSet-AWSControlTowerGuardrailAWS-GR-AUDIT-BUCKET-PUBLIC-READ-PROHIBITED- StackSet-AWSControlTowerGuardrailAWS-GR-AUDIT-BUCKET-PUBLIC-WRITE-PROHIBITED StackSet-AWSControlTowerBP-BASELINE-CLOUDWATCH- StackSet-AWSControlTowerBP-BASELINE-CONFIG- StackSet-AWSControlTowerBP-BASELINE-CLOUDTRAIL- StackSet-AWSControlTowerBP-BASELINE-SERVICE-ROLES- StackSet-AWSControlTowerBP-BASELINE-SERVICE-LINKED-ROLE-(In 3.2 and later) StackSet-AWSControlTowerBP-BASELINE-ROLES- StackSet-AWSControlTowerLoggingResources- | 
| AWS Config | AWS Config 规则 | AWSControlTower\$1AWS-GR\$1AUDIT\$1BUCKET\$1PUBLIC\$1READ\$1PROHIBITED AWSControlTower\$1AWS-GR\$1AUDIT\$1BUCKET\$1PUBLIC\$1WRITE\$1PROHIBIT | 
| AWS CloudTrail | 跟踪 | aws-controltower-BaselineCloudTrail | 
| Amazon CloudWatch | CloudWatch 赛事规则 | aws-controltower-ConfigComplianceChangeEventRule | 
| Amazon CloudWatch | CloudWatch 日志 | /aws/lambda/aws-controltower-NotificationForwarder | 
| AWS Identity and Access Management | 角色 | aws-controltower-AdministratorExecutionRole aws-controltower-CloudWatchLogsRole aws-controltower-ConfigRecorderRole aws-controltower-ForwardSnsNotificationRole aws-controltower-ReadOnlyExecutionRole AWSControlTowerExecution | 
| AWS Identity and Access Management | 策略 | AWSControlTowerServiceRolePolicy | 
| Amazon Simple Notification Service | 主题 | aws-controltower-SecurityNotifications | 
| AWS Lambda | 应用程序 | StackSet-AWSControlTowerBP-BASELINE-CLOUDWATCH-\$1 | 
| AWS Lambda | 函数 | aws-controltower-NotificationForwarder | 
| Amazon Simple Storage Service | 存储桶 | aws-controltower-logs-\$1 aws-controltower-s3-access-logs-\$1 | 

## 审计账户资源
<a name="audit-account-resources"></a>

设置 landing zone 时，将在您的审核账户中创建以下 AWS 资源。


| AWS 服务 | 资源类型 | 资源名称 | 
| --- | --- | --- | 
| AWS CloudFormation | 堆栈 | StackSet-AWSControlTowerGuardrailAWS-GR-AUDIT-BUCKET-PUBLIC-READ-PROHIBITED- StackSet-AWSControlTowerGuardrailAWS-GR-AUDIT-BUCKET-PUBLIC-WRITE-PROHIBITED- StackSet-AWSControlTowerBP-BASELINE-CLOUDWATCH- StackSet-AWSControlTowerBP-BASELINE-CONFIG- StackSet-AWSControlTowerBP-BASELINE-CLOUDTRAIL- StackSet-AWSControlTowerBP-BASELINE-SERVICE-ROLES- StackSet-AWSControlTowerBP-BASELINE-SERVICE-LINKED-ROLE-(In 3.2 and later) StackSet-AWSControlTowerBP-SECURITY-TOPICS- StackSet-AWSControlTowerBP-BASELINE-ROLES- StackSet-AWSControlTowerSecurityResources-\$1 | 
| AWS Config | 聚合器 | aws-controltower-GuardrailsComplianceAggregator | 
| AWS Config | AWS Config 规则 | AWSControlTower\$1AWS-GR\$1AUDIT\$1BUCKET\$1PUBLIC\$1READ\$1PROHIBITED AWSControlTower\$1AWS-GR\$1AUDIT\$1BUCKET\$1PUBLIC\$1WRITE\$1PROHIBITED | 
| AWS CloudTrail | 试用 | aws-controltower-BaselineCloudTrail | 
| Amazon CloudWatch | CloudWatch 赛事规则 | aws-controltower-ConfigComplianceChangeEventRule | 
| Amazon CloudWatch | CloudWatch 日志 | /aws/lambda/aws-controltower-NotificationForwarder | 
| AWS Identity and Access Management | 角色 | aws-controltower-AdministratorExecutionRole aws-controltower-CloudWatchLogsRole aws-controltower-ConfigRecorderRole aws-controltower-ForwardSnsNotificationRole aws-controltower-ReadOnlyExecutionRole aws-controltower-AuditAdministratorRole aws-controltower-AuditReadOnlyRole AWSControlTowerExecution | 
| AWS Identity and Access Management | 策略 | AWSControlTowerServiceRolePolicy | 
| Amazon Simple Notification Service | 主题 | aws-controltower-AggregateSecurityNotifications aws-controltower-AllConfigNotifications aws-controltower-SecurityNotifications | 
| AWS Lambda | 函数 | aws-controltower-NotificationForwarder | 

# 关于成员账户
<a name="member-accounts"></a>

成员账户是指您的用户用来执行其 AWS 工作负载的账户。可以通过多种方法（包括自动化方法）创建和自定义 AWS Control Tower 成员账户。在某些情况下，您可以将现有内容引 AWS 账户 入 AWS Control Tower。创建或注册成员账户时，这些成员账户必须位于在 AWS Control Tower 控制台中创建或向 AWS Control Tower 注册的组织单元（OU）中。有关更多信息，请参阅以下相关主题：
+ [资源调配方法](https://docs.aws.amazon.com//controltower/latest/userguide/methods-of-provisioning.html)
+ [使用 Account Factory 预置和管理账户](account-factory.md)
+ [在 AWS Control Tower 中自动执行任务](automating-tasks.md)
+ [使用自动注册功能移动和注册账户](account-auto-enrollment.md)
+ [利用 AWS Control Tower Account Factory for Terraform（AFT）预置账户](taf-account-provisioning.md)
+ 《AWS Organizations 用户指南》**中的 [AWS Organizations 术语和概念](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_getting-started_concepts.html)。

**账户和控件**  
成员账户可以在 AWS Control Tower 中进行*注册*，也可以*取消注册*。控件适用于已注册和未注册帐户的方法不同，并且控制可能适用于 OUs 基于继承的嵌套帐户。

有关 AWS Control Tower 分配的成员账户资源的信息，请参阅 [Account Factory 的资源注意事项](account-factory-considerations.md)。

# 通过以下方式与 AWS Control Tower 账户互动 AWS Service Catalog
<a name="handle-accounts-with-service-catalog"></a>

本节介绍如何使用以下功能来处理您的 AWS Control Tower 账户 AWS Service Catalog。

**Topics**
+ [

# 使用 Account Factory 在 Service Catalog 控制台中预置账户
](provision-as-end-user.md)
+ [

# 通过 Service Catalog 在 AWS Control Tower 中自动配置账户 APIs
](automated-provisioning-walkthrough.md)
+ [

# 在 Service Catalog 中更新预置产品
](update-provisioned-product.md)
+ [

# 在 Service Catalog 中取消注册账户
](unenroll-with-sc.md)

# 使用 Account Factory 在 Service Catalog 控制台中预置账户
<a name="provision-as-end-user"></a>

 以下过程介绍如何通过在 IAM Identity Center 中以用户身份创建和配置账户 AWS Service Catalog。此过程也称为*高级账户预置*或*手动账户预置*。或者，您可以通过编程方式配置 AWS Control Tower 账户，也可以使用 AWS CLI、Service Catalog APIs 或 AWS Control Tower Account Factory for Terraform (AFT) 进行配置。如果您之前设置了自定义蓝图，则可以在控制台中预置自定义账户。有关自定义的更多信息，请参阅[使用 Account Factory Customization（AFC）功能自定义账户](af-customization-page.md)。

**以用户身份在 Account Factory 中逐个配置账户**

1. 从您的用户门户 URL 登录。

1. 从**您的应用程序**中，选择 **AWS 账户**。

1. 从账户列表中，选择管理账户的账户 ID。此 ID 可能也有一个标签，例如 **(Management)**。

1. 从**AWSServiceCatalogEndUserAccess**中选择**管理控制台**。这将在此账户中 AWS 管理控制台 为该用户打开。

1. 确保您选择的账户配置正确 AWS 区域 ，该区域应该是您的 AWS Control Tower 区域。

1. 搜索并选择**Service Catalog** 以打开 Service Catalog 控制台。

1. 在导航窗格中，选择**产品**。

1. 选择 **AWS Control Tower Account Factory**，然后选择**启动产品**按钮。这一选择将启动向导以预置新账户。

1. 填写信息，并记住以下几点：
   + **SSOUser电子邮件**可以是新的电子邮件地址，也可以是与现有 IAM Identity Center 用户关联的电子邮件地址。无论您选择哪一个，此用户都将拥有您正在预置的账户的管理访问权。
   + **AccountEmail**必须是尚未与关联的电子邮件地址 AWS 账户。如果您在电子邮件中使用了新的**SSOUser电子邮件**地址，则可以在此处使用该电子邮件地址。

1. 请勿定义**TagOptions**和启用**通知**，否则可能会无法配置账户。完成后，选择**启动产品**。

1. 检查您的账户设置，然后选择**启动**。不要创建资源计划，否则将无法预置该账户。

1. 您的账户现在正在预置中。这可能需要几分钟才能完成。您可以刷新页面以更新显示的状态信息。
**注意**  
一次最多可预置五个账户。

# 通过 Service Catalog 在 AWS Control Tower 中自动配置账户 APIs
<a name="automated-provisioning-walkthrough"></a>

AWS Control Tower 与其他几项 AWS 服务集成，例如 AWS Service Catalog。您可以使用在 AWS Control Tower 中创建和配置您的成员账户，或者注册现有成员账户。 APIs 

**注意**  
如果您在 landing zone 设置中选择退出 IAM Identity Center，则不会使用您在 AWS Service Catalog APIs 或控制台配置账户期间提供的值。

该视频向您展示了如何通过调用，以自动批量方式配置帐户 AWS Service Catalog APIs。要进行配置，您需要从 AWS 命令行界面 (CLI) 调用 [https://docs.aws.amazon.com//servicecatalog/latest/dg/API_ProvisionProduct.html](https://docs.aws.amazon.com//servicecatalog/latest/dg/API_ProvisionProduct.html)API，然后指定一个 JSON 文件，其中包含您要设置的每个账户的参数。该视频演示如何安装和使用 [AWS Cloud9](https://docs.aws.amazon.com//cloud9/latest/user-guide/welcome.html) 开发环境来执行此项工作。如果你使用 Clouds AWS hell 而不是 Cloud AWS 9，CLI 命令将是一样的。

**注意**  
您还可以通过为每个账户调用的 [https://docs.aws.amazon.com//servicecatalog/latest/dg/API_UpdateProvisionedProduct.html](https://docs.aws.amazon.com//servicecatalog/latest/dg/API_UpdateProvisionedProduct.html)API 来调整这种方法 AWS Service Catalog 以实现账户自动更新。您可以编写一个脚本来逐个更新账户。

作为一种完全不同的自动化方法，如果您熟悉 Terraform，则可以使用 [AWS Control Tower Account Factory for Terraform（AFT）预置账户](taf-account-provisioning.md)。

**自动化管理角色示例**

以下是一个示例模板，可帮助配置您的管理账户中的自动化管理角色。您需要在管理账户中配置这个角色，这样它就可以在目标账户中使用管理员访问权限执行自动化。

```
AWSTemplateFormatVersion: 2010-09-09
Description: Configure the SampleAutoAdminRole

Resources:
  AdministrationRole:
    Type: AWS::IAM::Role
    Properties:
      RoleName: SampleAutoAdminRole
      AssumeRolePolicyDocument:
        Version: 2012-10-17		 	 	 
        Statement:
          - Effect: Allow
            Principal:
              Service: cloudformation.amazonaws.com
            Action:
              - sts:AssumeRole
      Path: /
      Policies:
        - PolicyName: AssumeSampleAutoAdminRole
          PolicyDocument:
            Version: 2012-10-17		 	 	 
            Statement:
              - Effect: Allow
                Action:
                  - sts:AssumeRole
                Resource:
                  - "arn:aws:iam::*:role/SampleAutomationExecutionRole"
```

**自动化执行角色示例**

以下是一个示例模板，可帮助您设置自动化执行角色。您将在目标账户中配置此角色。

```
AWSTemplateFormatVersion: "2010-09-09"
Description: "Create automation execution role for creating Sample Additional Role."

Parameters:
  AdminAccountId:
    Type: "String"
    Description: "Account ID for the administrator account (typically management, security or shared services)."
  AdminRoleName:
    Type: "String"
    Description: "Role name for automation administrator access."
    Default: "SampleAutomationAdministrationRole"
  ExecutionRoleName:
    Type: "String"
    Description: "Role name for automation execution."
    Default: "SampleAutomationExecutionRole"
  SessionDurationInSecs:
    Type: "Number"
    Description: "Maximum session duration in seconds."
    Default: 14400

Resources:
  # This needs to run after AdminRoleName exists.
  ExecutionRole:
    Type: "AWS::IAM::Role"
    Properties:
      RoleName: !Ref ExecutionRoleName
      MaxSessionDuration: !Ref SessionDurationInSecs
      AssumeRolePolicyDocument:
        Version: "2012-10-17"		 	 	 
        Statement:
          - Effect: "Allow"
            Principal:
              AWS:
                - !Sub "arn:aws:iam::${AdminAccountId}:role/${AdminRoleName}"
            Action:
              - "sts:AssumeRole"
      Path: "/"
      ManagedPolicyArns:
        - "arn:aws:iam::aws:policy/AdministratorAccess"
```

配置这些角色后，您可以调用 AWS Service Catalog APIs 来执行自动任务。视频中给出了 CLI 命令。

## Service Catalog API 的预置输入示例
<a name="sample-sc-api-input"></a>

以下是您在使用 Service Catalog `ProvisionProduct` API 配置新的 AWS Control Tower 账户或注册现有成员账户时可以向该服务目录 API 提供的输入示例：

**注意**  
要使用 API 注册现有成员账户，在调用 `ProvisionProduct` API 之前，目标账户上必须存在 I `AWSControlTowerExecution` AM 角色。您可以为新账户配置和现有账户注册使用以下示例中显示的相同输入参数。

```
{
  pathId: "lpv2-7n2o3nudljh4e",
  productId: "prod-y422ydgjge2rs",
  provisionedProductName: "Example product 1",
  provisioningArtifactId: "pa-2mmz36cfpj2p4",
  provisioningParameters: [
    {
      key: "AccountEmail",
      value: "abc@amazon.com"
    },
    {
      key: "AccountName",
      value: "ABC"
    },
    {
      key: "ManagedOrganizationalUnit",
      value: "Custom (ou-xfe5-a8hb8ml8)"
    },
    {
      key: "SSOUserEmail",
      value: "abc@amazon.com"
    },
    {
      key: "SSOUserFirstName",
      value: "John"
    },
    {
      key: "SSOUserLastName",
      value: "Smith"
    }
  ],
  provisionToken: "c3c795a1-9824-4fb2-a4c2-4b1841be4068"
}
```

有关更多信息，请参阅 [API reference for Service Catalog](https://docs.aws.amazon.com//servicecatalog/latest/dg/API_ProvisionProduct.html)。

**注意**  
请注意，`ManagedOrganizationalUnit` 值的输入字符串的格式已从 `OU_NAME` 变为 `OU_NAME (OU_ID)`。接下来的视频并未提及这一变化。

## 视频演练
<a name="automated-provisioning-video"></a>

此视频（6:58）介绍如何在 AWS Control Tower 中自动执行账户部署。为了更好地观看，请选择视频右下角的图标以将其放大为全屏。可以使用字幕。

[![AWS Videos](http://img.youtube.com/vi/LxxQTPdSFgw/0.jpg)](http://www.youtube.com/watch?v=LxxQTPdSFgw)


# 在 Service Catalog 中更新预置产品
<a name="update-provisioned-product"></a>

以下过程将指导您如何在 Service Catalog 中更新账户的预置产品，从而在 Account Factory 中更新账户或将账户移动至新 OU。

**注意**  
如果您在 landing zone 设置中选择退出 IAM Identity Center，则不会使用您在 AWS Service Catalog APIs 或控制台配置账户期间提供的值。

**通过 Service Catalog 更新 Account Factory 账户或更改账户 OU**

1. 登录到 AWS 管理控制台，然后在上打开 AWS Service Catalog 控制台[https://console.aws.amazon.com/servicecatalog/](https://console.aws.amazon.com/servicecatalog/)。
**注意**  
您必须以有权在 Service Catalog 中预置新产品的用户身份登录（例如，`AWSAccountFactory` 或 `AWSServiceCatalogAdmins` 群组中的 IAM Identity Center 用户）。

1. 在导航窗格中，选择**预置**，然后选择**预置产品**。

1.  对于列出的每个成员账户，请执行以下步骤以更新所有成员账户：

   1. 选择一个成员账户。您将被定向到该账户的*预置产品详细信息*页面。

   1. 在*预置产品详细信息*页面上，选择**事件**选项卡。

   1. 记下以下参数：
      +  **SSOUser电子邮件**（可在预配置产品详细信息中找到）
      +  **AccountEmail**（可在预配置产品详细信息中找到）
      +  **SSOUserFirstName**（在 IAM 身份中心可用） 
      +  **SSOUSerLastName**（在 IAM 身份中心可用） 
      +  **AccountName**（在 IAM 身份中心可用） 

   1. 从**操作**中，选择**更新**。

   1. 选择要更新的产品的**版本**旁边的按钮，并选择**下一步**。

   1. 提供之前提到的参数值。
      + 如果要保留现有 OU，请为**ManagedOrganizationalUnit**其选择账户已存在的 OU。
      + 如果要将账户迁移到新的 OU，请为**ManagedOrganizationalUnit**该账户选择新的 OU。

       中央云管理员可以在 AWS Control Tower 控制台的**组织**页面上找到这些信息。

   1. 选择**下一步**。

   1. 查看您的更改，然后选择**更新**。对于每个账户，此过程可能需要几分钟。

# 在 Service Catalog 中取消注册账户
<a name="unenroll-with-sc"></a>

 `AWSAccountFactory` 群组中的 IAM Identity Center 用户可以在 Service Catalog 控制台中通过终止预置产品来取消注册账户。有关 IAM Identity Center 用户或群组的更多信息，请参阅[通过管理用户和访问权限 AWS IAM Identity Center](https://docs.aws.amazon.com/controltower/latest/userguide/unmanage-account.html)。以下过程介绍如何在 Service Catalog 中取消注册成员账户。

**通过 Service Catalog 取消注册已注册的账户**

1. 在 Web 浏览器中打开 Service Catalog 控制台，网址为 [https://console.aws.amazon.com/servicecatalog](https://console.aws.amazon.com/servicecatalog)。

1. 从左侧导航窗格中，选择**预置产品列表**。

1. 从预置账户列表中，选择您希望不再由 AWS Control Tower 管理的账户的名称。

1. 在**预置产品详细信息**页面上，从**操作**菜单中选择**终止**。

1. 从随后显示的对话框中，选择**终止**。
**重要**  
*终止*一词特定于 Service Catalog。在 Service Catalog Account Factory 中终止一个账户时，不会关闭该账户。此操作将从账户的 OU 和您的登录区中删除该账户。

1.  取消注册账户后，其状态将更改为**未注册**。

1. 如果您不再需要该账户，请将其关闭。有关关闭 AWS 账户的更多信息，请参阅《*AWS Billing 用户指南》*中的[关闭账户](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/close-account.html)

**注意**  
等待该账户状态显示为**未注册**。