

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

# 了解服务相关角色
<a name="service-linked-roles"></a>

亚马逊 DocumentDB（兼容 MongoDB）使用 AWS Identity and Access Management (IAM) 服务相关角色。[服务相关角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html#iam-term-service-linked-role)是一种独特类型的 IAM 角色，它与 Amazon DocumentDB 直接相关。服务相关角色由 Amazon DocumentDB 预定义，包括该服务代表您调用 AWS 其他服务所需的所有权限。

服务关联角色使得可以更轻松地设置 Amazon DocumentDB，因为您不必手动添加必要的权限。Amazon DocumentDB 定义其服务相关角色的权限，除非另外定义，否则只有 Amazon DocumentDB 可以代入该角色。定义的权限包括信任策略和权限策略，而且权限策略不能附加到任何其他 IAM 实体。

只有在首先删除角色的相关资源后，才能删除角色。这将保护您的 Amazon DocumentDB 资源，因为您不会无意中删除对资源的访问权限。

有关支持服务相关角色的其他服务的信息，请参阅[使用 IAM 的AWS 服务](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html)并查找**服务相关角色**列中显示为**是**的服务。选择**是**和链接，查看该服务的服务关联角色文档。

## Amazon DocumentDB 的服务相关角色权限
<a name="service-linked-role-permissions"></a>

亚马逊 DocumentDB（兼容 MongoDB）使用名为 RDS 的服务相关角色来**AWSServiceRoleFor允许** Amazon DocumentDB 代表您的集群调用服务。 AWS 

 AWSServiceRoleForRDS 服务相关角色信任以下服务来代入该角色：
+ `docdb.amazonaws.com`

角色权限策略允许 Amazon DocumentDB 对指定资源完成以下操作：
+ 对 `ec2` 的操作：
  + `AssignPrivateIpAddresses`
  + `AuthorizeSecurityGroupIngress`
  + `CreateNetworkInterface`
  + `CreateSecurityGroup`
  + `DeleteNetworkInterface`
  + `DeleteSecurityGroup`
  + `DescribeAvailabilityZones`
  + `DescribeInternetGateways`
  + `DescribeSecurityGroups`
  + `DescribeSubnets`
  + `DescribeVpcAttribute`
  + `DescribeVpcs`
  + `ModifyNetworkInterfaceAttribute`
  + `RevokeSecurityGroupIngress`
  + `UnassignPrivateIpAddresses`
+ 对 `sns` 的操作：
  + `ListTopic`
  + `Publish`
+ 对 `cloudwatch` 的操作：
  + `PutMetricData`
  + `GetMetricData`
  + `CreateLogStream`
  + `PullLogEvents`
  + `DescribeLogStreams`
  + `CreateLogGroup`

**注意**  
您必须配置权限，允许 IAM 实体（如用户、组或角色）创建、编辑或删除服务关联角色。您可能会遇到以下错误消息：  
**Unable to create the resource. Verify that you have permission to create service linked role。Otherwise wait and try again later.**  
如果您看到此错误，请确保您已启用以下权限：  

```
{
    "Action": "iam:CreateServiceLinkedRole",
    "Effect": "Allow",
    "Resource": "arn:aws:iam::*:role/aws-service-role/rds.amazonaws.com/AWSServiceRoleForRDS",
    "Condition": {
        "StringLike": {
            "iam:AWSServiceName":"rds.amazonaws.com"
        }
    }
}
```

有关更多信息，请参阅《IAM 用户指南》**中的[服务关联角色权限](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#service-linked-role-permissions)。

## 创建 Amazon DocumentDB 服务相关角色
<a name="service-linked-roles-create"></a>

您无需手动创建服务关联角色。当您创建集群时，Amazon DocumentDB 将为您创建服务相关角色。

如果删除此服务相关角色然后需要再次创建它，则可以使用相同的流程在您的账户中重新创建此角色。当您创建集群时，Amazon DocumentDB 将再次为您创建服务相关角色。

## 修改 Amazon DocumentDB 服务关联角色
<a name="service-linked-roles-edit"></a>

Amazon DocumentDB 不允许您修改 AWSService RoleFor RDS 服务相关角色。创建服务关联角色后，您将无法更改角色的名称，因为可能有多种实体引用该角色。不过，您可以使用 IAM 修改角色的说明。有关更多信息，请参阅《IAM 用户指南》**中的[编辑服务关联角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#edit-service-linked-role)。

## 删除 Amazon DocumentDB 服务相关角色
<a name="service-linked-roles-delete"></a>

如果不再需要使用某个需要服务关联角色的功能或服务，我们建议您删除该角色。这样就没有未被主动监控或维护的未使用实体。但是，您必须先删除所有 集群，然后才能删除服务相关角色。

### 清除 Amazon DocumentDB 服务相关角色
<a name="service-linked-roles-clean-up"></a>

必须先确认服务相关角色没有活动会话并删除该角色使用的任何资源，然后才能使用 IAM 删除服务相关角色。

**要使用控制台检查服务相关角色是否具有活动会话**

1. 登录 AWS 管理控制台 并打开 IAM 控制台，网址为[https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)。

1. 在 IAM 控制台的导航窗格中，选择**角色**，然后选择 **AWSServiceRoleForRDS** 角色的名称（不是复选框）。

1. 在所选角色的 **Summary** 页面上，选择 **Access Advisor** 选项卡。

1. 在 **Access Advisor (访问顾问)** 选项卡上，查看服务相关角色的近期活动。
**注意**  
如果您不确定 Amazon DocumentDB 是否 AWSServiceRoleFor在使用 RDS 角色，可以尝试删除该角色。如果服务正在使用该角色，则删除操作会失败，并且您可以查看正在使用该角色的 区域。如果该角色已被使用，则您必须等待会话结束，然后才能删除该角色。您无法撤销服务相关角色对会话的权限。

如果要移除 AWSService RoleFor RDS 角色，则必须先删除*所有*实例和集群。有关删除实例和集群的信息，请参阅以下主题：
+ [删除 Amazon DocumentDB 实例](db-instance-delete.md)
+ [删除 Amazon DocumentDB 集群](db-cluster-delete.md)

## Amazon DocumentDB 服务相关角色支持的区域
<a name="slr-regions"></a>

Amazon DocumentDB 支持在该服务可用的所有区域中使用服务相关角色。有关更多信息，请参阅 [https://docs.aws.amazon.com/documentdb/latest/developerguide/regions-and-azs.html#regions-and-azs-availability](https://docs.aws.amazon.com/documentdb/latest/developerguide/regions-and-azs.html#regions-and-azs-availability)。

 