必填角色 - AWS Control Tower

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

必填角色

一般而言,角色和策略是中身份和访问管理 (IAM) 的一部分 AWS。有关更多信息,请参阅 AWS IAM 用户指南

AFT 在 AFT 管理账户和 AWS Control Tower 管理账户中创建了多个 IAM 角色和策略,以支持 AFT 管道的运营。这些角色是根据最低权限访问模型创建的,该模型将权限限制为每个角色和策略所需的最低限度操作和资源集。为这些角色和策略分配了一key:value对 AWS 标签, managed_by:AFT以便识别。

除了这些 IAM 角色外,AFT 还创建了三个基本角色:

  • AWSAFTAdmin角色

  • AWSAFTExecution角色

  • AWSAFTService角色

以下各节将对这些角色进行说明。

AWSAFTAdmin 角色解释

部署 AFT 时,AWSAFTAdmin角色将在 AFT 管理账户中创建。此角色允许 AFT 管道担任 AWS Control Tower 和 AFT 预配置账户中的AWSAFTExecution角色,从而执行与账户配置和自定义相关的操作。

以下是附加到AWSAFTAdmin角色的内联策略(JSON 工件):

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "sts:AssumeRole", "Resource": [ "arn:aws:iam::*:role/AWSAFTExecution", "arn:aws:iam::*:role/AWSAFTService" ] } ] }

以下 JSON 构件显示了该AWSAFTAdmin角色的信任关系。占位符号被 012345678901 AFT 管理账户 ID 号所取代。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::012345678901:root" }, "Action": "sts:AssumeRole" } ] }

AWSAFTExecution 角色解释

部署 AFT 时,AWSAFTExecution角色将在 AFT 管理账户和 AWS Control Tower 管理账户中创建。稍后,AFT 管道在 AFT 账户配置阶段在每个 AFT 预配置账户中创建AWSAFTExecution角色。

AFT 最初使用该AWSControlTowerExecution角色在指定账户中创建AWSAFTExecution角色。该AWSAFTExecution角色允许 AFT 管道运行在 AFT 框架的配置和配置自定义阶段执行的步骤,适用于已置备的 AFT 账户和共享账户。

不同的角色可以帮助你限制范围

最佳做法是,将自定义权限与资源初始部署期间允许的权限分开。请记住,该AWSAFTService角色用于账户配置,该AWSAFTExecution角色用于账户自定义。这种分离限制了管道每个阶段允许的权限范围。如果您要自定义 AWS Control Tower 共享账户,这种区别尤其重要,因为共享账户可能包含敏感信息,例如账单详情或用户信息。

AWSAFTExecution角色权限:AdministratorAccess— AWS 托管策略

以下 JSON 构件显示了附加到该AWSAFTExecution角色的 IAM 策略(信任关系)。占位符号被 012345678901 AFT 管理账户 ID 号所取代。

的信任政策 AWSAFTExecution

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::012345678901:role/AWSAFTAdmin" }, "Action": "sts:AssumeRole" } ] }

AWSAFTService 角色解释

AWSAFTService角色在所有已注册和托管账户(包括共享账户和管理账户)中部署 AFT 资源。以前的资源只能由该AWSAFTExecution角色部署。

AWSAFTService角色旨在供服务基础架构用于在配置阶段部署资源,而该AWSAFTExecution角色仅用于部署自定义项。通过以这种方式担任角色,您可以在每个阶段保持更精细的访问控制。

AWSAFTService角色权限:AdministratorAccess— AWS 托管策略

以下 JSON 构件显示了附加到该AWSAFTService角色的 IAM 策略(信任关系)。占位符号被 012345678901 AFT 管理账户 ID 号所取代。

的信任政策 AWSAFTService

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::012345678901:role/AWSAFTAdmin" }, "Action": "sts:AssumeRole" } ] }