

# 在 IAM 中为工作负载激活 Trusted Advisor
<a name="activate-ta-in-iam"></a>

**注意**  
工作负载所有者应在创建 Trusted Advisor 工作负载之前为其账户**激活 Discovery 支持**。选择**激活 Discovery 支持**将创建工作负载所有者所需的角色。对所有其他关联账户使用以下步骤。

已激活 Trusted Advisor 的工作负载关联账户的所有者必须在 IAM 中创建角色才能查看 AWS Well-Architected Tool 中的 Trusted Advisor 信息。

**在 IAM 中为 AWS WA Tool 创建角色以从 Trusted Advisor 中获取信息**

1. 登录到 AWS 管理控制台 并在 [https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/) 上打开 IAM 控制台。

1. 在 **IAM** 控制台的导航窗格中，选择**角色**，然后选择**创建角色**。

1. 对于**可信实体类型**，选择**自定义信任策略**。

1. 将以下**自定义信任策略**复制并粘贴到 **IAM** 控制台的 JSON 字段中，如下图所示。将 *`WORKLOAD_OWNER_ACCOUNT_ID`* 替换为工作负载所有者的账户 ID，然后选择**下一步**。

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Principal": {
                   "Service": "wellarchitected.amazonaws.com"
               },
               "Action": "sts:AssumeRole",
               "Condition": {
                   "StringEquals": {
                       "aws:SourceAccount": "WORKLOAD_OWNER_ACCOUNT_ID"
                   },
                   "ArnEquals": {
                       "aws:SourceArn": "arn:aws:wellarchitected:*:111122223333:workload/*"
                   }
               }
           }
       ]
   }
   ```

------  
![\[IAM 控制台中自定义信任策略的屏幕截图。\]](http://docs.aws.amazon.com/zh_cn/wellarchitected/latest/userguide/images/custom-trust-policy.png)
**注意**  
之前的自定义信任策略条件块中的 `aws:sourceArn` 是 `"arn:aws:wellarchitected:*:WORKLOAD_OWNER_ACCOUNT_ID:workload/*"`，这是一个通用条件，表示该角色可以由 AWS WA Tool 用于工作负载所有者的工作负载。但是，可以将访问范围缩小到特定的工作负载 ARN 或一组工作负载 ARN。要指定多个 ARN，请参阅以下示例信任策略。  

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Principal": {
                   "Service": "wellarchitected.amazonaws.com"
               },
               "Action": "sts:AssumeRole",
               "Condition": {
                   "StringEquals": {
                   "aws:SourceAccount": "111122223333"
                   },
                   "ArnEquals": {
                       "aws:SourceArn": [
                       "arn:aws:wellarchitected:us-east-1:111122223333:workload/WORKLOAD_ID_1",
       "arn:aws:wellarchitected:us-east-1:111122223333:workload/WORKLOAD_ID_2"
                       ]
                   }
               }
           }
       ]
   }
   ```

1. 在**添加权限**页面上，对于**权限策略**，选择**创建策略**以授予 AWS WA Tool 从 Trusted Advisor 中读取数据的权限。选择**创建策略**会打开一个新窗口。
**注意**  
此外，您可以选择在创建角色时跳过创建权限，并在创建角色后创建内联策略。在成功创建角色的消息中选择**查看角色**，然后从**权限**选项卡的**添加权限**下拉列表中选择**创建内联策略**。

1. 将以下**权限策略**复制并粘贴到 JSON 字段中。在 `Resource` ARN 中，将 *`YOUR_ACCOUNT_ID`* 替换为您自己的账户 ID，指定区域或星号（`*`），然后选择**下一步: 标签**。

   有关 ARN 格式的详细信息，请参阅 *AWS 一般参考指南*中的 [Amazon Resource Name (ARN)](https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html)。

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": [
                   "trustedadvisor:DescribeCheckRefreshStatuses",
                   "trustedadvisor:DescribeCheckSummaries",
                   "trustedadvisor:DescribeRiskResources",
                   "trustedadvisor:DescribeAccount",
                   "trustedadvisor:DescribeRisk",
                   "trustedadvisor:DescribeAccountAccess",
                   "trustedadvisor:DescribeRisks",
                   "trustedadvisor:DescribeCheckItems"
               ],
               "Resource": [
                   "arn:aws:trustedadvisor:*:111122223333:checks/*"
               ]
           }
       ]
   }
   ```

------

1. 如果已为工作负载激活 Trusted Advisor 并且**资源定义**设置为 **AppRegistry** 或**全部**，则所有在附加到该工作负载的 AppRegistry 应用程序中拥有资源的账户都必须在其 Trusted Advisor 角色的**权限策略**中添加以下权限。

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "DiscoveryPermissions",
               "Effect": "Allow",
               "Action": [
                   "servicecatalog:ListAssociatedResources",
                   "tag:GetResources",
                   "servicecatalog:GetApplication",
                   "resource-groups:ListGroupResources",
                   "cloudformation:DescribeStacks",
                   "cloudformation:ListStackResources"
               ],
               "Resource": "*"
           }
       ]
   }
   ```

------

1. （可选）添加标签。选择**下一步：审核**。

1. 检查策略，为其指定名称，然后选择**创建策略**。

1. 在角色的**添加权限**页面上，选择您刚刚创建的策略名称，然后选择**下一步**。

1. 输入**角色名称**，该名称必须使用以下语法：`WellArchitectedRoleForTrustedAdvisor-WORKLOAD_OWNER_ACCOUNT_ID`，然后选择**创建角色**。将 *`WORKLOAD_OWNER_ACCOUNT_ID`* 替换为工作负载所有者的账户 ID。

   您应该在页面顶部看到一条成功消息，通知您已创建角色。

1. 要查看角色和关联的权限策略，请在左侧导航窗格中的**访问管理**下，选择**角色**并搜索 `WellArchitectedRoleForTrustedAdvisor-WORKLOAD_OWNER_ACCOUNT_ID` 名称。选择角色名称以验证**权限**和**信任关系**是否正确。