

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

# 生成 EC2 策略的账户状态报告
<a name="orgs_manage_policies_ec2_status-report"></a>

*账户状态报告*允许您查看范围内账户的 EC2 政策支持的所有属性的当前状态。您可以选择要包含在报告范围内的账户和组织单元（OU），也可以通过选择根来选择整个组织。

此报告提供区域细分来帮助您评估就绪情况，并评测属性的当前状态是*跨账户统一*（通过 `numberOfMatchedAccounts`）还是*不一致*（通过 `numberOfUnmatchedAccounts`）。您还可以看到*最常见值*，即该属性中最常观察到的配置值。

是否附加 EC2 策略以强制执行基准配置取决于您的特定用例。

有关更多信息以及说明性示例，请参阅[EC2 策略的账户状态报告](orgs_manage_policies_ec2.md#orgs_manage_policies_ec2-account-status-report)。

## 先决条件
<a name="orgs_manage_policies_ec2_accessing-status-report-prerequisites"></a>

在生成账户状态报告之前，请先完成以下步骤：

1. 该`StartDeclarativePoliciesReport`操作只能由组织的管理账户或委派的管理员调用。

1. 要使用委托管理员账户运行报告，该账户必须注册为 EC2 服务的委托管理员。

1. 在生成报告之前，您必须拥有 S3 存储桶。创建新存储桶或使用现有存储桶。存储桶必须位于您提出请求的同一区域。存储桶必须有相应的存储桶策略。有关 S3 策略示例，请参阅 * Amazon EC2 API 参考[中](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_StartDeclarativePoliciesReport.html#API_StartDeclarativePoliciesReport_Examples)示例*下的 * Amazon S3 策略示例*。

1. 您必须为 Amazon EC2 启用可信访问。这将创建一个只读的服务相关角色，该角色为组织中的账户生成现有配置的账户状态报告。

   **使用控制台**

   对于组织控制台，此步骤是启用 EC2 策略的过程的一部分。

   **使用 AWS CLI**

   为此 AWS CLI，请使用该[EnableAWSServiceAccess](https://docs.aws.amazon.com/organizations/latest/APIReference/API_EnableAWSServiceAccess.html)操作。

   有关如何使用为特定服务启用可信访问的更多信息 AWS CLI，请参阅[AWS 服务 可与一起使用的内容 AWS Organizations](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_integrate_services_list.html)。

1. 每个组织一次只能生成一个报告。如果您在生成报告时生成另一个报告，则该操作会返回错误。

## 生成合规性状态报告
<a name="orgs_manage_policies_ec2_accessing-status-report"></a>

**最小权限**  
要生成合规性状态报告，您需要具有运行以下操作的权限：  
`ec2:StartDeclarativePoliciesReport`
`ec2:DescribeDeclarativePoliciesReports`
`ec2:GetDeclarativePoliciesReportSummary`
`ec2:CancelDeclarativePoliciesReport`
`organizations:DescribeAccount`
`organizations:DescribeOrganization`
`organizations:DescribeOrganizationalUnit`
`organizations:ListAccounts`
`organizations:ListDelegatedAdministrators`
`organizations:ListAWSServiceAccessForOrganization`
`s3:PutObject`

**注意**  
如果您的 Amazon S3 存储桶使用 SSE-KMS 加密，则还必须在策略中包含`kms:GenerateDataKey`权限。

------
#### [ AWS 管理控制台 ]

使用以下步骤来生成账户状态报告。

**生成账户状态报告**

1. 登录 [AWS Organizations 控制台](https://console.aws.amazon.com/organizations/v2)。您必须以 IAM 用户的身份登录，担任 IAM 角色；或在组织的管理账户中以根用户的身份登录（[不推荐](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#lock-away-credentials)）。

1. 在**策略**页面上，选择 ** EC2 策略**。

1. 在 ** EC2 政策**页面上，**从 “**操作” ** 下拉菜单中选择 “**查看账户状态报告”。

1. 在**查看账户状态报告**页面上，选择**生成状态报告**。

1. 在**组织结构**小组件中，指定想要在报告中包含的组织单元（OU）。

1. 选择**提交**。

------
#### [ AWS CLI & AWS SDKs ]

**生成账户状态报告**

使用以下操作生成合规性状态报告、检查其状态并查看报告：
+ `ec2:start-declarative-policies-report`：生成账户状态报告。报告并非同步生成，可能需要几个小时才能完成。有关更多信息，请参阅 *Amazon EC2 API 参考*中的 [StartDeclarativePoliciesReport](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_StartDeclarativePoliciesReport.html)。
+ `ec2:describe-declarative-policies-report`：描述账户状态报告的元数据，包括报告的状态。有关更多信息，请参阅 *Amazon EC2 API 参考*中的 [DescribeDeclarativePoliciesReports](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeDeclarativePoliciesReports.html)。
+ `ec2:get-declarative-policies-report-summary`：检索账户状态报告摘要。有关更多信息，请参阅 *Amazon EC2 API 参考*中的 [GetDeclarativePoliciesReportSummary](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetDeclarativePoliciesReportSummary.html)。
+ `ec2:cancel-declarative-policies-report`：取消生成账户状态报告。有关更多信息，请参阅 *Amazon EC2 API 参考*中的 [CancelDeclarativePoliciesReport](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CancelDeclarativePoliciesReport.html)。

在生成报告之前，授予 EC2 策略主体对存储报告的 Amazon S3 存储桶的访问权限。要执行该操作，请将以下策略附加到该存储桶。`amzn-s3-demo-bucket`替换为您的实际的 Amazon S3 存储桶名称，以及用于调`identity_ARN`用`StartDeclarativePoliciesReport`操作的 IAM 身份。

以下 JSON 政策授予将报告提交到您的存储桶的权限：

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "DeclarativePoliciesReportDelivery",
            "Effect": "Allow",
            "Principal": {
                "AWS": "{{identity_ARN}}"
            },
            "Action": [
                "s3:PutObject"
            ],
            "Resource": "arn:aws:s3:::{{amzn-s3-demo-bucket}}/*",
            "Condition": {
                "StringEquals": {
                    "aws:CalledViaLast": "organizations.amazonaws.com"
                }
            }
        }
    ]
}
```

------

------