

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

# 将服务相关角色用于 CloudTrail
<a name="using-service-linked-roles"></a>

AWS CloudTrail 使用 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 角色的独特类型。 CloudTrail服务相关角色由服务预定义 CloudTrail ，包括该服务代表您调用其他 AWS 服务所需的所有权限。

**Topics**
+ [使用角色在中创建和管理 CloudTrail 组织跟踪和 CloudTrail Lake 组织事件数据存储 CloudTrail](using-service-linked-roles-create-slr-for-org-trails.md)
+ [CloudTrail 服务相关角色支持的区域](#slr-regions-create-slr-for-org-trails)
+ [使用角色在中创建和管理 CloudTrail 事件上下文 CloudTrail](using-service-linked-roles-create-slr-for-context-management.md)
+ [CloudTrail 服务相关角色支持的区域](#slr-regions-create-slr-for-context-management)

# 使用角色在中创建和管理 CloudTrail 组织跟踪和 CloudTrail Lake 组织事件数据存储 CloudTrail
<a name="using-service-linked-roles-create-slr-for-org-trails"></a>

AWS CloudTrail 使用 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 角色的独特类型。 CloudTrail服务相关角色由服务预定义 CloudTrail ，包括该服务代表您调用其他 AWS 服务所需的所有权限。

服务相关角色使设置变得 CloudTrail 更加容易，因为您不必手动添加必要的权限。 CloudTrail 定义其服务相关角色的权限，除非另有定义，否则 CloudTrail 只能担任其角色。定义的权限包括信任策略和权限策略，以及不能附加到任何其他 IAM 实体的权限策略。

只有在首先删除相关资源后，您才能删除服务关联角色。这样可以保护您的 CloudTrail 资源，因为您不会无意中删除访问资源的权限。

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

## 的服务相关角色权限 CloudTrail
<a name="service-linked-role-permissions-create-slr-for-org-trails"></a>

CloudTrail 使用名为的服务相关角色 **AWSServiceRoleForCloudTrail**— 此服务关联角色用于支持组织跟踪和组织事件数据存储。

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

名为的角色权限策略 CloudTrailServiceRolePolicy CloudTrail 允许对指定资源完成以下操作：
+ 对所有 CloudTrail 资源执行的操作：
  + `All`
+ 对所有 AWS Organizations 资源执行的操作：
  + `organizations:DescribeAccount`
  + `organizations:DescribeOrganization`
  + `organizations:ListAccounts`
  + `organizations:ListAWSServiceAccessForOrganization`
+  CloudTrail 服务主体对所有 Organizations 资源执行的操作，用于列出该组织的委派管理员：
  + `organizations:ListDelegatedAdministrators` 
+ 在组织事件数据存储上[禁用 Lake 联合身份验证](query-disable-federation.md)的操作：
  + `glue:DeleteTable`
  + `lakeformation:DeRegisterResource`

您必须配置使用户、组或角色能够创建、编辑或删除服务相关角色的权限。有关更多信息，请参阅*《IAM 用户指南》*中的[服务相关角色权限](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#service-linked-role-permissions)。

有关与之关联的托管策略的更多信息 AWSServiceRoleForCloudTrail，请参阅[AWS 的托管策略 AWS CloudTrail](security-iam-awsmanpol.md)。

## 为创建服务相关角色 CloudTrail
<a name="create-service-linked-role-create-slr-for-org-trails"></a>

您无需手动创建服务关联角色。当您创建组织跟踪或组织事件数据存储，或者在 CloudTrail 控制台中添加委托管理员时 AWS 管理控制台，在 AWS CLI、或 AWS API 中会为您 CloudTrail创建服务相关角色。

如果您删除该服务关联角色，然后需要再次创建，您可以使用相同流程在账户中重新创建此角色。当您创建组织跟踪或组织事件数据存储或在 CloudTrail 控制台中添加委托管理员时， CloudTrail 会再次为您创建服务相关角色。

## 编辑的服务相关角色 CloudTrail
<a name="edit-service-linked-role-create-slr-for-org-trails"></a>

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

## 删除的服务相关角色 CloudTrail
<a name="delete-service-linked-role-create-slr-for-org-trails"></a>

您无需手动删除该 AWSServiceRoleForCloudTrail 角色。如果从 Or AWS 账户 ganizations 组织中移除了，则该AWSServiceRoleForCloudTrail角色将自动从该组织中删除 AWS 账户。如果不从组织中移除账户，则无法将策略从组织管理账户中的 AWSServiceRoleForCloudTrail 服务相关角色中分离或移除。

您也可以使用 IAM 控制台、 AWS CLI 或 AWS API 手动删除服务相关角色。为此，您必须先手动清除服务相关角色的资源，然后才能手动删除它。

**注意**  
如果您尝试删除资源时 CloudTrail 服务正在使用该角色，则删除可能会失败。如果发生这种情况，请等待几分钟后重试。

要删除 AWSServiceRoleForCloudTrail 角色正在使用的某个资源，您可以执行下列操作之一：
+  AWS 账户 从 Organizations 中的组织中删除。
+ 更新跟踪以使其不再是组织跟踪。有关更多信息，请参阅 [使用 CloudTrail 控制台更新跟踪](cloudtrail-update-a-trail-console.md)。
+ 更新事件数据存储，使其不再为组织事件数据存储。有关更多信息，请参阅 [使用控制台更新事件数据存储](query-event-data-store-update.md)。
+ 删除跟踪。有关更多信息，请参阅 [使用 CloudTrail 控制台删除跟踪](cloudtrail-delete-trails-console.md)。
+ 删除事件数据存储。有关更多信息，请参阅 [使用控制台删除事件数据存储](query-event-data-store-delete.md)。

**使用 IAM 手动删除服务关联角色**

使用 IAM 控制台 AWS CLI、或 AWS API 删除AWSServiceRoleForCloudTrail服务相关角色。有关更多信息，请参阅《IAM 用户指南》**中的[删除服务关联角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#delete-service-linked-role)。

## CloudTrail 服务相关角色支持的区域
<a name="slr-regions-create-slr-for-org-trails"></a>

CloudTrail 支持在所有 AWS 区域 地方使用服务相关角色，而 CloudTrail 且 Organizations 都可用。有关更多信息，请参阅《AWS 一般参考》中的[AWS 区域和端点](https://docs.aws.amazon.com/general/latest/gr/rande.html)。**

# 使用角色在中创建和管理 CloudTrail 事件上下文 CloudTrail
<a name="using-service-linked-roles-create-slr-for-context-management"></a>

AWS CloudTrail 使用 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 角色的独特类型。 CloudTrail服务相关角色由服务预定义 CloudTrail ，包括该服务代表您调用其他 AWS 服务所需的所有权限。

服务相关角色使设置变得 CloudTrail 更加容易，因为您不必手动添加必要的权限。 CloudTrail 定义其服务相关角色的权限，除非另有定义，否则 CloudTrail 只能担任其角色。定义的权限包括信任策略和权限策略，以及不能附加到任何其他 IAM 实体的权限策略。

只有在首先删除相关资源后，您才能删除服务关联角色。这样可以保护您的 CloudTrail 资源，因为您不会无意中删除访问资源的权限。

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

## 的服务相关角色权限 CloudTrail
<a name="service-linked-role-permissions-create-slr-for-context-management"></a>

CloudTrail 使用名为的服务相关角色 **AWSServiceRoleForCloudTrailEventContext**— 此服务关联角色用于管理 CloudTrail 事件上下文和 EventBridge 规则。

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

名为的角色权限策略 CloudTrailEventContext CloudTrail 允许对指定资源完成以下操作：
+ 针对资源标签的操作：
  + `tag:GetResources`
+  CloudTrail 服务主体对所有 Amazon EventBridge 资源执行的操作以创建规则：
  + `events:PutRule`
+ 对所有 Amazon EventBridge 资源执行操作，以便 CloudTrail 服务主体管理其创建的规则：
  + `events:PutTargets`
  + `events:DeleteRule`
  + `events:RemoveTargets`
  + `events:RemoveTargets`
+  CloudTrail 服务主体对所有 Amazon EventBridge 资源执行的操作，以描述其创建的规则：
  + `events:DescribeRule`
  + `events:DeRegisterResource`
+ 对所有 Amazon EventBridge 资源执行的操作：
  + `events:ListRules`

您必须配置使用户、组或角色能够创建、编辑或删除服务相关角色的权限。有关更多信息，请参阅*《IAM 用户指南》*中的[服务相关角色权限](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#service-linked-role-permissions)。

有关与之关联的托管策略的更多信息 AWSServiceRoleForCloudTrailEventContext，请参阅[AWS 的托管策略 AWS CloudTrail](security-iam-awsmanpol.md)。

## 为创建服务相关角色 CloudTrail
<a name="create-service-linked-role-create-slr-for-context-management"></a>

您无需手动创建服务关联角色。当您开始使用 AWS 管理控制台、或 AWS API 中的上下文事件功能时， CloudTrail会为您创建服务相关角色。 AWS CLI

如果您删除该服务关联角色，然后需要再次创建，您可以使用相同流程在账户中重新创建此角色。当您开始使用上下文事件功能时， CloudTrail 会再次为您创建服务相关角色。

## 编辑的服务相关角色 CloudTrail
<a name="edit-service-linked-role-create-slr-for-context-management"></a>

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

## 删除的 AWSServiceRoleForCloudTrailEventContext 服务相关角色 CloudTrail
<a name="delete-service-linked-role-create-slr-for-context-management"></a>

如果您不再需要使用需要 AWSServiceRoleForCloudTrailEventContext服务相关角色的功能或服务，我们建议您删除该角色。这样就没有未被主动监控或维护的未使用实体。但是，必须先清理服务相关角色的资源，然后才能通过从事件数据存储中移除 TagContext 密钥来手动将其删除。

**注意**  
如果您尝试删除资源时 CloudTrail 服务正在使用该角色，则删除可能会失败。如果发生这种情况，请等待几分钟后重试。

**删除 AWSServiceRoleForCloudTrailEventContext 服务关联角色使用的 CloudTrail 资源**

1. 在终端或命令行中，对要从中移除 `TagContext` 键的事件存储运行 **put-event-configuration** 命令。例如，要从位于美国东部（俄亥俄州）地区的*111122223333*账户中移除该`TagContext`密钥，且该账户的 ARN 为唯一*arn:aws:cloudtrail:us-east-2:111122223333:eventdatastore/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111*的`TagContext`上下文密钥选择器，则应使用未为以下项指定值的**put-event-configuration**命令：`--context-key-selectors`

   ```
    aws cloudtrail put-event-configuration --event-data-store arn:aws:cloudtrail:us-east-2:111122223333:eventdatastore/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 --max-event-size Large --context-key-selectors
   ```

1. 对分区中每个区域的每个数据存储重复此命令。有关更多信息，请参阅[使用 Amazon 资源名称识别 AWS 资源 (ARNs)](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference-arns.html)。

**使用 IAM 手动删除服务关联角色**

使用 IAM 控制台 AWS CLI、或 AWS API 删除 AWSServiceRoleForCloudTrailEventContext 服务相关角色。有关更多信息，请参阅《IAM 用户指南》**中的[删除服务关联角色](https://docs.aws.amazon.com/IAM/latest/UserGuide/using-service-linked-roles.html#delete-service-linked-role)。



## CloudTrail 服务相关角色支持的区域
<a name="slr-regions-create-slr-for-context-management"></a>

CloudTrail 支持在所有可用 CloudTrail 和 EventBridge 的区域中使用服务相关角色。有关更多信息，请参阅 [AWS 区域和端点](https://docs.aws.amazon.com/general/latest/gr/rande.html)。