本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
架构概述
部署 cfcT 将在 AWS 云中构建以下环境,并以 Amazon S3 存储桶作为配置源。

图 1:AWS Control Tower 自定义项的架构
cfcT 包括一个您在 AWS Control Tower 管理账户中部署的 AWS CloudFormation 模板。该模板会启动构建工作流所需的所有组件,因此您可以自定义 AWS Control Tower 登录区。
注意
CfCT 必须部署在 AWS Control Tower 主区域和 AWS Control Tower 管理账户中,因为 AWS Control Tower 登录区正是部署在这些位置。有关设置 AWS Control Tower 登录区的信息,请参阅 开始使用 AWS Control Tower。
在部署 CfCT 时,它会通过 Amazon Simple Storage Service
注意
默认情况下,CfCT 创建一个 Amazon S3 存储桶来存储管道源。如果您已有 AWS CodeCommit 存储库,则可以将其位置更改为CodeCommit
CfCT 会部署两个工作流:
-
AWS CodePipeline
工作流 -
以及 AWS Control Tower 生命周期事件工作流。
工作 AWS CodePipeline 流程
工作 AWS CodePipeline 流程用于配置 AWS CodePipeline、AWS CodeBuild
当您上传配置包时,CfCT 会调用代码管道来运行三个阶段。
-
构建阶段 — 使用 AWS CodeBuild 验证配置包的内容。
-
SCP Stag e — 调用服务控制策略状态机,该状态机调用 AWS Organizations API 进行创建。 SCPs
-
AWS CloudFormation St@@ ag e — 调用堆栈集状态机来部署您在清单文件中提供的账户列表或 OUs中指定的资源。
在每个阶段,代码管道都会调用堆栈集和 SCP 步骤函数,这些函数将自定义堆栈集部署 SCPs 到目标个人账户或整个组织单位。
注意
有关自定义配置包的详细信息,请参阅 CfCT 自定义指南。
AWS Control Tower 生命周期事件工作流
在 AWS Control Tower 中创建新账户时,生命周期事件可以调用 AWS CodePipeline 工作流程。您可以通过此工作流程自定义配置包,该工作流程包括亚马逊 EventBridge事件规则、亚马逊
当 Amazon EventBridge 事件规则检测到匹配的生命周期事件时,它会将事件传递到 Amazon SQS FIFO 队列,调用该 AWS Lambda 函数,然后调用代码管道来执行堆栈集的下游部署和。 SCPs