

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

# AWS Identity and Access Management 在 AMS 中加速
<a name="acc-sec-iam"></a>

AWS Identity and Access Management 是一项 Web 服务，可帮助您安全地控制对 AWS 资源的访问。可以使用 IAM 来控制谁通过了身份验证（准许登录）并获得授权（具有相应权限）来使用资源。在 AMS Accelerate 入职期间，您负责在每个托管账户中创建跨账户 IAM 管理员角色。

在 AMS Accelerate 中，您负责管理对您 AWS 账户 及其底层资源的访问权限，例如访问管理解决方案、访问策略和相关流程。这意味着您可以管理用户生命周期、目录服务权限和联合身份验证系统，以访问 AWS 控制台或 AWS APIs。为了帮助您管理访问解决方案，AMS Accelerate 部署了检测常见的 IAM 错误配置的 AWS Config 规则，并提供补救通知。有关更多信息，请参阅 [AWS Config Managed Rules](https://docs.aws.amazon.com/config/latest/developerguide/evaluate-config_use-managed-rules.html)。

## 在 AMS 加速中使用身份进行身份验证
<a name="acc-sec-iam-auth"></a>

AMS 使用 IAM 角色，这是一种 IAM 身份。IAM 角色与用户类似，因为它是一个具有权限策略的身份，该策略决定了该身份可以做什么和不能做什么 AWS。但是，一个角色没有与之关联的凭证，与其与一个人有唯一的关联，而是可以由任何需要它的人担任。IAM 用户可担任角色来暂时获得针对特定任务的不同权限。

访问角色由内部组成员资格控制，内部组成员资格由运营管理部门管理和定期审查。AMS 使用以下 IAM 角色。

**注意**  
AMS 访问角色允许 AMS 操作员访问您的资源以提供 AMS 功能（请参阅[服务描述](acc-sd.md)）。改变这些角色可能会抑制我们提供这些能力的能力。如果您需要更改 AMS 访问角色，请咨询您的云架构师。


<table>
<thead>
  <tr><th>角色名称</th><th>**说明**</th></tr>
</thead>
<tbody>
  <tr><td colspan="2">使用者（实体）：仅限 AMS 访问服务</td></tr>
  <tr><td>ams-access-management</td><td>由您在入职期间手动部署。仅由 AMS 拥有部署或更新访问角色的访问权限。入职后仍保留在您的账户中，以备将来对访问角色进行任何更新。</td></tr>
  <tr><td colspan="2">使用者（实体）：AMS 运营部门</td></tr>
  <tr><td>ams-access-admin-operations</td><td>此角色具有账户操作的管理权限，但无权读取、写入或删除常用作数据存储的服务（例如亚马逊简单存储 AWS 服务、亚马逊关系数据库服务、Amazon DynamoDB、Amazon Redshift 和亚马逊）中的客户内容。 ElastiCache只有极少数精选的 AMS 人员可以担任此角色。</td></tr>
  <tr><td>ams-access-operations</td><td>此 AMS 运营角色有权在您的账户中执行管理任务。此角色对通常用作数据存储的服务（例如亚马逊简单存储服务、亚马逊关系数据库 AWS 服务、亚马逊 DynamoDB、Amazon Redshift 和亚马逊）中的客户内容没有读取、写入或删除权限。 ElastiCache此角色还不包括执行 AWS Identity and Access Management 写入操作的权限。</td></tr>
  <tr><td>ams-access-read-only</td><td>此 AMS 只读角色仅限于您的 AMS 账户中的只读权限。该角色不授予对通常用作数据存储的 AWS 服务（例如 Amazon S3、Amazon RDS、DynamoDB、Amazon Redshift ElastiCache 和）中客户内容的读取权限。</td></tr>
  <tr><td colspan="2">使用方（实体）：AMS 运营和 AMS 服务</td></tr>
  <tr><td>ams\_ssm\_automation\_role</td><td rowspan="2">假设 AWS Systems Manager 在您的账户中执行 SSM 自动化文档。</td></tr>
  <tr><td>ams\_ssm\_automation\_role</td></tr>
  <tr><td colspan="2">使用者（实体）：AMS Secur ity</td></tr>
  <tr><td>ams-access-security-analyst</td><td>此 AMS 安全角色有权在您的 AMS 账户中执行专门的安全警报监控和安全事件处理。只有极少数精选的 AMS Security 人员可以担任此角色。该角色不授予对通常用作数据存储的 AWS 服务（例如 Amazon S3;、Amazon RDS;、Amazon DynamoDB、Amazon Redshift ElastiCache 和）中客户内容的读取权限。</td></tr>
  <tr><td>ams-access-security-analyst-只读</td><td>此 AMS 安全角色仅限于您 AMS 账户中的只读权限，用于执行专门的安全警报监控和安全事件处理。该角色不授予对通常用作数据存储的 AWS 服务（例如 Amazon S3;、Amazon RDS;、Amazon DynamoDB、Amazon Redshift ElastiCache 和）中客户内容的读取权限。</td></tr>
  <tr><td colspan="2">使用方（实体）：AWS 服务</td></tr>
  <tr><td>ams-access-admin</td><td>此 AMS 管理员角色拥有不受限制地在账户中操作的完全权限。只有 AMS 内部服务（使用范围缩小的会话策略）可以担任管理员角色。</td></tr>
  <tr><td>ams-opscenter-eventbridge-role</td><td>Amazon EventBridge 假定在 AMS 特定的 AWS Config 规则 补救工作流程中创建 AWS Systems Manager OpsItems 。</td></tr>
  <tr><td>AMSOSConfigurationCustomerInstanceRole</td><td>当 AMS 操作系统配置服务发现缺少所需的 IAM 策略时，此 IAM 角色将应用于您的 Amazon EC2 实例。它允许您的亚马逊 EC2实例与亚马逊和亚马逊 CloudWatch EventBridge 服务进行交互。 AWS Systems Manager它还附加了 AMS 自定义托管策略，以启用 RDP 访问您的 Windows 实例。</td></tr>
  <tr><td>mc-patch-glue-service-角色</td><td> AWS Glue ETL 工作流程假设执行数据转换并为 AMS 补丁报告生成器做好准备。</td></tr>
  <tr><td colspan="2">使用方（实体）：AMS 服务</td></tr>
  <tr><td>ams-alarm-manager-AWSManaged ServicesAlarmManagerDe-<8-digit hash></td><td>由您的 AMS 账户中的 AMS 警报管理器基础设施承担，用于对新 AWS AppConfig 部署进行 AWS Config 规则 评估。</td></tr>
  <tr><td>ams-alarm-manager-AWSManaged ServicesAlarmManagerRe-<8-digit hash></td><td>由您的 AMS 账户中的 AMS 警报管理器补救基础设施承担，允许创建或删除警报以进行补救。</td></tr>
  <tr><td>ams-alarm-manager-AWSManaged ServicesAlarmManager SS-<8-digit hash></td><td>假设在您的 AWS Systems Manager AMS 账户中调用 AMS 警报管理器补救服务。</td></tr>
  <tr><td>ams-alarm-manager-AWSManaged ServicesAlarmManagerTr-<8-digit hash></td><td>由您 AWS 账户中的 AMS 警报管理器基础设施承担，用于定期进行 AMS AWS Config 规则 评估。</td></tr>
  <tr><td>ams-alarm-manager-AWSManaged ServicesAlarmManagerVa-<8-digit hash></td><td>由您的 AMS 账户中的 AMS 警报管理器基础设施承担，以确保 AWS 账户中存在所需的警报。</td></tr>
  <tr><td>ams-backup-iam-role</td><td>此角色用于在您的账户 AWS Backup 中运行。</td></tr>
  <tr><td>ams-monitoring--AWSManaged ServicesLogGroupLimitLamb <8-digit hash></td><td>由您的 AMS 账户中的 AMS 日志和监控基础设施假设，用于评估 Amazon CloudWatch 日志组限制并与服务配额进行比较。</td></tr>
  <tr><td>ams-monitoring-AWSManaged 服务 RDSE RDSMonitoring-<8-digit hash></td><td>由您的 AMS 账户中的 AMS 日志和监控基础设施承担，用于将 Amazon RDS 事件转发给 Amaz CloudWatch on Events。</td></tr>
  <tr><td>ams-monitoring--AWSManaged ServicesRedshiftMonitorin <8-digit hash></td><td>由您的 AMS 账户中的 AMS 日志和监控基础设施承担，用于将 Amazon Redshift 事件（CreateCluster 和 DeleteCuster）转发到亚马逊 CloudWatch 活动。</td></tr>
  <tr><td>ams-monitoring-infrastruc-AWSManaged ServicesMonito-<8-digit hash></td><td>由您的 AMS 账户中的 AMS 日志和监控基础设施假设向 Amazon 简单通知服务发布消息，以验证该账户是否在报告所有必要数据。</td></tr>
  <tr><td>ams-opscenter-role</td><td>由您的 AMS 账户中的 AMS 通知管理系统承担，用于管理您账户中 AWS Systems Manager OpsItems 与提醒相关的信息。</td></tr>
  <tr><td>ams-opsitem-autoexecution-role</td><td>由 AMS 通知管理系统假设，使用 SSM 文档处理自动补救，以监控与您账户中的资源相关的警报。</td></tr>
  <tr><td>ams-patch-infrastructure-amspatchconfigruleroleC1-<8-digit hash></td><td>假设 AWS Config 为评估 AMS 补丁资源并检测其 CloudFormation 堆栈中的偏差。</td></tr>
  <tr><td>ams-patch-infrastructure-amspatchcwruleopsitemams-<8-digit hash></td><td>由 Amazon EventBridge 假定 AWS Systems Manager OpsItems 为补丁失败而创建。</td></tr>
  <tr><td>ams-patch-infrastructure-amspatchservicebusamspat-<8-digit hash></td><td>Amazon 假设将事件发送 EventBridge 到 AMS Patch 协调器事件总线，用于 AWS Systems Manager 维护 Windows 状态更改通知。</td></tr>
  <tr><td>ams-patch-reporting-infra-amspatchreportingconfigr-<8-digit hash></td><td>假设 AWS Config 为评估 AMS 补丁报告资源并检测其 CloudFormation 堆栈中的偏差。</td></tr>
  <tr><td>ams-resource-tagger-AWSManaged ServicesResourceTagg-<8-digit hash></td><td>由您的 AMS 账户中的 AMS 资源标记器基础设施承担，用于在新 AWS AppConfig 部署时执行 AWS Config 规则 评估。</td></tr>
  <tr><td>ams-resource-tagger-AWSManaged ServicesResourceTagg-<8-digit hash></td><td>由您的 AMS 账户中的 AMS 资源标签基础架构使用，以验证托管资源是否存在所需的 AWS 标签。</td></tr>
  <tr><td>ams-resource-tagger-AWSManaged ServicesResourceTagg-<8-digit hash></td><td>假设 AWS Systems Manager 在您的 AMS 账户中调用 AMS 资源标记器补救工作流程。</td></tr>
  <tr><td>ams-resource-tagger-AWSManaged ServicesResourceTagg-<8-digit hash></td><td>由您的 AMS 账户中的 AMS 资源标签修复基础设施负责为托管资源创建或删除 AWS 标签。</td></tr>
  <tr><td>ams-resource-tagger-AWSManaged ServicesResourceTagg-<8-digit hash></td><td>由您 AWS 账户中的 AMS 资源标记器基础设施负责定期评估 AMS Config 规则。</td></tr>
  <tr><td>ams\_os\_configuration\_event\_rule\_role-<AWS Region></td><td>Amazon 假设将事件从您的账户转发 EventBridge 到正确区域的 AMS 操作系统配置服务 EventBus 。</td></tr>
  <tr><td>mc-patch-reporting-service</td><td>由 AMS 补丁数据聚合器和报告生成器假设。</td></tr>
</tbody>
</table>


**注意**  
这是 ams-access-management角色的模板。这是云架构师 (CAs) 在入职时在你的账户中手动部署的堆栈：man [ag](https://ams-account-access-templates.s3.amazonaws.com/management-role.yaml) ement-role.yaml。  
这是不同访问角色和访问级别的模板： ams-access-read-only、、 ams-access-operations、:accelerate-roles ams-access-admin-operations. ams-access-admin y [aml。](https://ams-account-access-templates.s3.amazonaws.com/accelerate-roles.yaml)

要了解有关 AWS Cloud Development Kit (AWS CDK) (AWS CDK) 标识符（包括哈希）的更多信息，请参阅 Uni [q IDs](https://docs.aws.amazon.com/cdk/latest/guide/identifiers.html#identifiers_unique_ids) ue。

AMS Accelerate 功能服务负责以编程方式访问账户，但会话策略的范围仅限于相应的功能服务（例如，补丁、备份、监控等）。**ams-access-admin**

AMS Accelerate 遵循行业最佳实践，以满足并保持合规资格。AMS Accelerate 对您账户的访问已记录在 CloudTrail 案，您也可以通过变更跟踪进行审查。有关可用于获取此信息的查询的信息，请参阅[跟踪您的 AMS Accelerate 账户中的更改](acc-change-record.md)。

## 使用策略管理访问
<a name="acc-sec-iam-policy"></a>

各个 AMS Accelerate 支持团队，例如运营工程师、云架构师和云服务交付经理 (CSDMs)，有时需要访问您的账户才能响应服务请求和事件。他们的访问受内部AMS访问服务的约束，该服务强制实施控制措施，例如业务理由、服务请求、运营项目和支持案例。默认访问权限为只读，并且会跟踪和记录所有访问权限；另请参阅[跟踪您的 AMS Accelerate 账户中的更改](acc-change-record.md)。

### 验证 IAM 资源
<a name="acc-sec-iam-policy-valid"></a>

AMS Accelerate 访问系统会定期在您的账户中扮演角色（至少每 24 小时一次），并验证我们的所有 IAM 资源是否符合预期。

为了保护您的账户，AMS Accelerate 有一个 “金丝雀”，用于监控上述 IAM 角色的存在和状态及其附加策略，并发出警报。金丝雀会定期担任该**ams-access-read-only**角色并对您的账户发起 CloudFormation 和 IAM API 调用。金丝雀会评估 AMS Accelerate 访问角色的状态，以确保它们始终未被修改，并且. up-to-date 此活动会在账户中创建 CloudTrail 日志。

如中所示，金丝雀的 AWS Security Token Service (AWS STS) 会话名称为 **ams-access-roles-auditor-{ uuid4 ()}**，并且会进行以下 API 调用： CloudTrail 
+ 云形成 API 调用：`describe_stacks()`
+ IAM API 调用：
  + `get_role()`
  + `list_attached_role_policies()`
  + `list_role_policies()`
  + `get_policy()`
  + `get_policy_version()`
  + `get_role_policy()`