

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

# 将跟踪事件复制到事件数据存储


**注意**  
Amazon CloudTrail 从 2026 年 5 月 31 日起，Lake 将不再向新客户开放。如果您想使用 CloudTrail Lake，请在该日期之前注册。现有客户可以继续正常使用该服务。有关更多信息，请参阅 [CloudTrail 湖泊可用性变更](cloudtrail-lake-service-availability-change.md)。

您可以将跟踪事件复制到 CloudTrail Lake 事件数据存储中，以创建记录到跟踪的事件的 point-in-time快照。复制跟踪的事件不会干扰跟踪记录事件的功能，也不会以任何方式修改跟踪。

您可以将跟踪事件复制到为事件配置的现有 CloudTrail 事件数据存储中，也可以创建新的 CloudTrail 事件数据存储并选择**复制跟踪事件**选项作为事件数据存储创建的一部分。有关将跟踪事件复制到现有事件数据存储的更多信息，请参阅[使用控制台将跟踪事件复制到现有事件数据存储](cloudtrail-copy-trail-events-lake.md)。有关创建新的事件数据存储的更多信息，请参阅[使用控制台为事件创建 CloudTrail 事件数据存储](query-event-data-store-cloudtrail.md)。

如果您要将跟踪事件复制到组织事件数据存储，则必须使用该组织的管理账户。您不能使用组织的委托管理员账户复制跟踪事件。

CloudTrail 湖泊事件数据存储会产生费用。创建事件数据存储时，您可以选择要用于事件数据存储的[定价选项](cloudtrail-lake-manage-costs.md#cloudtrail-lake-manage-costs-pricing-option)。定价选项决定了摄取和存储事件的成本，以及事件数据存储的默认和最长保留期。有关 CloudTrail 定价和管理 Lake 成本的信息，请参阅[Amazon CloudTrail 定价](https://www.amazonaws.cn/cloudtrail/pricing/)和[管理 CloudTrail 湖泊成本](cloudtrail-lake-manage-costs.md)。

将跟踪事件复制到 CloudTrail Lake 事件数据存储时，会根据事件数据存储提取的未压缩数据量产生费用。

将跟踪事件复制到 CloudTrail Lake 时， CloudTrail 解压缩以 gzip（压缩）格式存储的日志，然后将日志中包含的事件复制到您的事件数据存储中。未压缩数据的大小可能大于 S3 的实际存储大小。要对未压缩数据的大小进行总体估计，可以将 S3 存储桶中日志的大小乘以 10。

您可以通过为复制的事件指定更窄的时间范围来降低成本。如果您计划仅使用事件数据存储来查询复制的事件，则可以关闭事件摄取，以免对将来的事件产生费用。有关更多信息，请参阅 [Amazon CloudTrail 定价](https://www.amazonaws.cn/cloudtrail/pricing/)和[管理 CloudTrail 湖泊成本](cloudtrail-lake-manage-costs.md)。

**场景**

下表描述了复制跟踪事件的一些常见场景，以及如何使用控制台完成每个场景。


| 场景 | 如何在控制台中完成此操作？ | 
| --- | --- | 
|  无需摄取新事件即可分析和查询 CloudTrail Lake 中的历史轨迹事件  |  在创建事件数据存储时，创建[新的事件数据存储](https://docs.amazonaws.cn/awscloudtrail/latest/userguide/query-event-data-store-cloudtrail.html#query-event-data-store-cloudtrail-procedure)并选择**复制跟踪事件**选项。创建事件数据存储时，请取消选择**摄取事件**（程序的步骤 15），以确保事件数据存储仅包含跟踪的历史事件，不包含未来事件。  | 
|  将现有跟踪替换为 CloudTrail Lake 事件数据存储  |  使用与您的跟踪相同的事件选择器创建事件数据存储，以确保事件数据存储与跟踪具有相同的覆盖范围。 为避免源跟踪和目标事件数据存储之间存在重复事件，请为复制的事件选择一个早于事件数据存储创建时间的时间范围。 创建事件存储后，您可以关闭跟踪的日志记录，避免产生额外费用。  | 

**Topics**
+ [

## 复制跟踪事件的注意事项
](#cloudtrail-trail-copy-considerations-lake)
+ [

## 复制跟踪事件所需的权限
](#copy-trail-events-permissions)
+ [

# 使用控制台将跟踪事件复制到现有事件数据存储
](cloudtrail-copy-trail-events-lake.md)
+ [

# 使用控制台将跟踪事件复制到新的事件数据存储
](scenario-lake-import.md)
+ [

# 使用 CloudTrail 控制台查看活动副本详细信息
](copy-trail-details.md)

## 复制跟踪事件的注意事项


复制跟踪事件时，请将以下因素考虑在内。
+  复制跟踪事件时， CloudTrail 使用 S3 [https://docs.amazonaws.cn/AmazonS3/latest/API/API_GetObject.html](https://docs.amazonaws.cn/AmazonS3/latest/API/API_GetObject.html)API 操作检索源 S3 存储桶中的跟踪事件。有些 S3 归档存储类，例如 S3 Glacier Flexible Retrieval、S3 Glacier Deep Archive、S3 Outposts 和 S3 Intelligent-Tiering Deep Archive 层，无法使用 `GetObject` 来访问。要复制存储在这些归档存储类中的跟踪事件，必须先使用 S3 `RestoreObject` 操作还原副本。有关还原已归档的对象的信息，请参阅《Amazon S3 用户指南》**中的[恢复已归档的对象](https://docs.amazonaws.cn/AmazonS3/latest/userguide/restoring-objects.html)。
+  将跟踪事件复制到事件数据存储时， CloudTrail 无论目标事件数据存储的事件类型、高级事件选择器或 Amazon Web Services 区域的配置如何，都会复制所有跟踪事件。
+  在将跟踪事件复制到现有的事件数据存储之前，请确保根据您的应用场景适当配置了事件数据存储的定价选项和保留期。
  + **定价选项：**定价选项决定了摄取和存储事件的成本。有关定价选项的更多信息，请参阅 [Amazon CloudTrail 定价](https://www.amazonaws.cn/cloudtrail/pricing/)和[事件数据存储定价选项](cloudtrail-lake-manage-costs.md#cloudtrail-lake-manage-costs-pricing-option)。
  + **保留期：**保留期限决定事件数据在事件数据存储中保存多长时间。 CloudTrail 仅复制在事件数据存储保留期`eventTime`内的跟踪事件。要确定适当的保留期，请计算要复制的最早事件（以天为单位）和要在事件数据存储中保留这些事件的天数（**保留期** = *oldest-event-in-days* \$1*number-days-to-retain*）的总和。例如，如果您要复制的最早事件已有 45 天，并且您想将事件在事件数据存储中再保留 45 天，则可以将保留期设置为 90 天。
+ 如果您要将跟踪事件复制到事件数据存储中进行调查，并且不想摄取任何未来事件，则可以停止对事件数据存储的摄取。创建事件数据存储时，请取消选择**摄取事件**选项（[程序](query-event-data-store-cloudtrail.md#query-event-data-store-cloudtrail-procedure)的步骤 15），以确保事件数据存储仅包含跟踪的历史事件，不包含未来事件。
+  在复制跟踪事件之前，请禁用附加到源 S3 存储桶的所有访问控制列表 (ACLs)，并更新目标事件数据存储的 S3 存储桶策略。有关更新 S3 存储桶策略的更多信息，请参阅[复制跟踪事件所用的 Amazon S3 存储桶策略](cloudtrail-copy-trail-to-lake.md#cloudtrail-copy-trail-events-permissions-s3)。有关禁用的更多信息 ACLs，请参阅[控制对象的所有权和禁 ACLs 用存储桶](https://docs.amazonaws.cn/AmazonS3/latest/userguide/about-object-ownership.html)。
+  CloudTrail 仅复制源 S3 存储桶中的 Gzip 压缩日志文件中的跟踪事件。 CloudTrail 不会从未压缩的日志文件或使用 Gzip 以外的格式压缩的日志文件中复制跟踪事件。
+  为避免源跟踪和目标事件数据存储之间存在重复事件，请为复制的事件选择一个早于事件数据存储创建时间的时间范围。
+  默认情况下， CloudTrail 仅复制 S3 存储桶`CloudTrail`前缀中包含 CloudTrail 的事件和`CloudTrail`前缀中的前缀，而不检查其他 Amazon 服务的前缀。如果要复制其他前缀中包含 CloudTrail 的事件，则必须在复制跟踪事件时选择前缀。
+  要将跟踪事件复制到组织事件数据存储，必须使用该组织的管理账户。您不能使用委托管理员账户将跟踪事件复制到组织事件数据存储。

## 复制跟踪事件所需的权限


在复制跟踪事件之前，请确保您拥有 IAM 角色所需的全部权限。如果您选择现有 IAM 角色来复制跟踪事件，则只需要更新 IAM 角色权限。如果您选择创建新的 IAM 角色，请为该角色 CloudTrail 提供所有必要的权限。

如果源 S3 存储桶使用 KMS 密钥进行数据加密，请确保 KMS 密钥策略 CloudTrail 允许解密存储桶中的数据。如果源 S3 存储桶使用多个 KMS 密钥，则必须更新每个密钥的策略 CloudTrail 以允许解密存储桶中的数据。

**Topics**
+ [

### 复制跟踪事件所需的 IAM 权限
](#copy-trail-events-permissions-iam)
+ [

### 复制跟踪事件所用的 Amazon S3 存储桶策略
](#copy-trail-events-permissions-s3)
+ [

### 用于解密源 S3 存储桶中数据的 KMS 密钥政策
](#copy-trail-events-permissions-kms)

### 复制跟踪事件所需的 IAM 权限


复制跟踪事件时，您可以选择创建新的 IAM 角色，也可以使用现有 IAM 角色。当您选择新的 IAM 角色时， CloudTrail 会创建一个具有所需权限的 IAM 角色，您无需采取任何进一步的操作。

如果您选择现有角色，请确保 IAM 角色的策略 CloudTrail 允许从源 S3 存储桶复制跟踪事件。此部分提供所需 IAM 角色权限和信任策略的示例。

以下示例提供了权限策略，该策略 CloudTrail 允许从源 S3 存储桶复制跟踪事件。将*amzn-s3-demo-bucket*、*myAccountID*、*region**prefix*、和*eventDataStoreId*，替换为适合您的配置的值。*myAccountID*是用于 CloudTrail Lake 的 Amazon 账户 ID，可能与 S3 存储桶的 Amazon 账户 ID 不同。

将*key-region**keyAccountID*、和*keyID*替换为用于加密源 S3 存储桶的 KMS 密钥的值。如果源 S3 存储桶未使用 KMS 密钥进行加密，则可省略 `AWSCloudTrailImportKeyAccess` 语句。

```
{
  "Version": "2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "AWSCloudTrailImportBucketAccess",
      "Effect": "Allow",
      "Action": ["s3:ListBucket", "s3:GetBucketAcl"],
      "Resource": [
        "arn:aws:s3:::amzn-s3-demo-bucket"
      ],
      "Condition": {
        "StringEquals": {
          "aws:SourceAccount": "myAccountID",
          "aws:SourceArn": "arn:aws:cloudtrail:region:myAccountID:eventdatastore/eventDataStoreId"
         }
       }
    },
    {
      "Sid": "AWSCloudTrailImportObjectAccess",
      "Effect": "Allow",
      "Action": ["s3:GetObject"],
      "Resource": [
        "arn:aws:s3:::amzn-s3-demo-bucket/prefix",
        "arn:aws:s3:::amzn-s3-demo-bucket/prefix/*"
      ],
      "Condition": {
        "StringEquals": {
          "aws:SourceAccount": "myAccountID",
          "aws:SourceArn": "arn:aws:cloudtrail:region:myAccountID:eventdatastore/eventDataStoreId"
         }
       }
    },
    {
      "Sid": "AWSCloudTrailImportKeyAccess",
      "Effect": "Allow",
      "Action": ["kms:GenerateDataKey","kms:Decrypt"],
      "Resource": [
        "arn:aws:kms:key-region:keyAccountID:key/keyID"
      ]
    }
  ]
}
```

以下示例提供了 IAM 信任策略，该策略 CloudTrail 允许代入 IAM 角色从源 S3 存储桶复制跟踪事件。将*myAccountID**region*、和，替换为*eventDataStoreArn*与您的配置对应的值。*myAccountID*是用于 CloudTrail Lake 的 Amazon Web Services 账户 ID，可能与 S3 存储桶的 Amazon 账户 ID 不同。

```
{
  "Version": "2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "cloudtrail.amazonaws.com"
      },
      "Action": "sts:AssumeRole",
      "Condition": {
        "StringEquals": {
          "aws:SourceAccount": "myAccountID",
          "aws:SourceArn": "arn:aws:cloudtrail:region:myAccountID:eventdatastore/eventDataStoreId"
        }
      }
    }
  ]
}
```

### 复制跟踪事件所用的 Amazon S3 存储桶策略


默认情况下，Amazon S3 存储桶和对象都是私有的。仅资源所有者（创建存储桶的 Amazon 账户）能够访问存储桶及其包含的对象。资源所有者可以通过编写访问策略来向其他资源和用户授予访问权。

在复制跟踪事件之前，必须更新 S3 存储桶策略 CloudTrail 以允许从源 S3 存储桶复制跟踪事件。

您可以将以下语句添加到 S3 存储桶策略，以授予这些权限。将*roleArn*和*amzn-s3-demo-bucket*替换为适合您的配置的值。

****

```
{
  "Sid": "AWSCloudTrailImportBucketAccess",
  "Effect": "Allow",
  "Action": [
    "s3:ListBucket",
    "s3:GetBucketAcl",
    "s3:GetObject"
  ],
  "Principal": {
    "AWS": "roleArn"
  },
  "Resource": [
    "arn:aws:s3:::amzn-s3-demo-bucket",
    "arn:aws:s3:::amzn-s3-demo-bucket/*"
  ]
},
```

### 用于解密源 S3 存储桶中数据的 KMS 密钥政策


如果源 S3 存储桶使用 KMS 密钥进行数据加密，请确保 KMS 密钥策略 CloudTrail 提供从启用了 SSE-KMS 加密的 S3 存储桶复制跟踪事件所需的`kms:Decrypt`和`kms:GenerateDataKey`权限。如果源 S3 存储桶使用多个 KMS 密钥，则必须更新每个密钥的策略。更新 KMS 密钥策略 CloudTrail 允许解密源 S3 存储桶中的数据，运行验证检查以确保事件符合 CloudTrail标准，并将事件复制到 CloudTrail Lake 事件数据存储中。

以下示例提供了 KMS 密钥策略，该策略 CloudTrail 允许解密源 S3 存储桶中的数据。将*roleArn*、*amzn-s3-demo-bucket*、*myAccountID**region*、和*eventDataStoreId*，替换为适合您的配置的值。*myAccountID*是用于 CloudTrail Lake 的 Amazon 账户 ID，可能与 S3 存储桶的 Amazon 账户 ID 不同。

```
{
  "Sid": "AWSCloudTrailImportDecrypt",
  "Effect": "Allow",
  "Action": [
          "kms:Decrypt",
          "kms:GenerateDataKey"
  ],
  "Principal": {
    "AWS": "roleArn"
  },
  "Resource": "*",
  "Condition": {
    "StringLike": {
      "kms:EncryptionContext:aws:s3:arn": "arn:aws:s3:::amzn-s3-demo-bucket/*"
    },
    "StringEquals": {
      "aws:SourceAccount": "myAccountID",
      "aws:SourceArn": "arn:aws:cloudtrail:region:myAccountID:eventdatastore/eventDataStoreId"
    }
  }
}
```

# 使用控制台将跟踪事件复制到现有事件数据存储
将跟踪事件复制到现有的事件数据存储

按照以下程序将跟踪事件复制到事件数据存储中。有关如何创建新的事件数据存储的信息，请参阅[使用控制台为事件创建 CloudTrail 事件数据存储](query-event-data-store-cloudtrail.md)。

**注意**  
 在将跟踪事件复制到现有的事件数据存储之前，请确保根据您的应用场景适当配置了事件数据存储的定价选项和保留期。  
**定价选项：**定价选项决定了摄取和存储事件的成本。有关定价选项的更多信息，请参阅 [Amazon CloudTrail 定价](https://www.amazonaws.cn/cloudtrail/pricing/)和[事件数据存储定价选项](cloudtrail-lake-manage-costs.md#cloudtrail-lake-manage-costs-pricing-option)。
**保留期：**保留期限决定事件数据在事件数据存储中保存多长时间。 CloudTrail 仅复制在事件数据存储保留期`eventTime`内的跟踪事件。要确定适当的保留期，请计算要复制的最早事件（以天为单位）和要在事件数据存储中保留这些事件的天数（**保留期** = *oldest-event-in-days* \$1*number-days-to-retain*）的总和。例如，如果您要复制的最早事件已有 45 天，并且您想将事件在事件数据存储中再保留 45 天，则可以将保留期设置为 90 天。

**要将跟踪事件复制到事件数据存储**

1. 登录 Amazon Web Services 管理控制台 并打开 CloudTrail 控制台，网址为[https://console.aws.amazon.com/cloudtrail/](https://console.amazonaws.cn/cloudtrail/)。

1.  在导航窗格中，在 **Lake** 下，选择**事件数据存储**。

1. 选择 **Copy trail events**（复制跟踪事件）。

1. 在 **Copy trail events**（复制跟踪事件）页面，在 **Event source**（事件源）下选择您想复制的跟踪。默认情况下， CloudTrail 仅复制 S3 存储桶`CloudTrail`前缀中包含 CloudTrail 的事件和`CloudTrail`前缀中的前缀，而不检查其他 Amazon 服务的前缀。如果要复制其他前缀中包含 CloudTrail 的事件，**请选择输入 S3 URI**，然后选择**浏览 S3** 浏览到该前缀。如果跟踪的源 S3 存储桶使用 KMS 密钥进行数据加密，请确保 KMS 密钥策略 CloudTrail 允许解密数据。如果您的源 S3 存储桶使用多个 KMS 密钥，则必须更新每个密钥的策略 CloudTrail 以允许解密存储桶中的数据。有关更新 KMS 密钥政策的更多信息，请参阅[用于解密源 S3 存储桶中数据的 KMS 密钥政策](cloudtrail-copy-trail-to-lake-eds.md#copy-trail-events-permissions-kms)。

   S3 存储桶策略必须授予从 S3 存储桶复制跟踪事件的 CloudTrail 访问权限。有关更新 S3 存储桶策略的更多信息，请参阅[复制跟踪事件所用的 Amazon S3 存储桶策略](cloudtrail-copy-trail-to-lake-eds.md#copy-trail-events-permissions-s3)。

1. **在 “指定事件的时间范围**” 中，选择复制事件的时间范围。 CloudTrail 在尝试复制跟踪事件之前，请检查前缀和日志文件名以验证该名称是否包含所选开始日期和结束日期之间的日期。您可以选择一个**相对范围**或者**绝对范围**。为避免源跟踪和目标事件数据存储之间存在重复事件，请选择一个早于事件数据存储创建时间的时间范围。
**注意**  
CloudTrail 仅复制在事件数据存储保留期`eventTime`内的跟踪事件。例如，如果事件数据存储的保留期为 90 天，则 CloudTrail 不会复制任何`eventTime`超过 90 天的跟踪事件。
   + 如果选择**相对范围**，则可以选择复制过去 6 个月、1 年、2 年、7 年或自定义范围内记录的事件。 CloudTrail 复制选定时间段内记录的事件。
   + 如果选择 “**绝对范围**”，则可以选择特定的开始和结束日期。 CloudTrail 复制在所选开始日期和结束日期之间发生的事件。

1. 对于**送达位置**，请从下拉列表中选择目标事件数据存储。

1. 对于**权限**，请从以下 IAM 角色选项中进行选择。如果您选择现有的 IAM 角色，请验证 IAM 角色策略是否提供了必要的权限。有关更新 IAM 角色权限的更多信息，请参阅[复制跟踪事件所需的 IAM 权限](cloudtrail-copy-trail-to-lake-eds.md#copy-trail-events-permissions-iam)。
   + 选择**创建新角色（推荐）**以创建新的 IAM 角色。在**输入 IAM 角色名称**中，输入角色的名称。 CloudTrail 会自动为这个新角色创建必要的权限。
   + 选择**使用自定义 IAM 角色 ARN**以使用未列出的自定义 IAM 角色。对于**输入 IAM 角色 ARN**，输入 IAM ARN。
   + 从下拉列表中选择现有的 IAM 角色。

1. 选择**复制事件**。

1. 系统将提示您进行确认。如果您已准备好确认，请选择 **Copy trail events to Lake**（将跟踪事件复制到 Lake），然后选择 **Copy events**（复制事件）。

1. 在**复制详细信息**页面中，您可以查看复制状态并检查是否复制失败。跟踪事件复制完成后，如果复制未出错，则**复制状态**将设置为**已完成**，否则如果出错了，则设置为**失败**。
**注意**  
事件复制详细信息页面上显示的详细信息不是实时的。诸如**复制的前缀**之类的详细信息的实际值可能高于页面上显示的值。 CloudTrail 在事件副本的过程中以增量方式更新详细信息。

1. 如果**复制状态**为**失败**，则要先修复**复制失败**中显示的所有错误，然后选择**重试复制**。当您重试复制时，会在出现故障的位置 CloudTrail 恢复副本。

有关查看跟踪事件复制详细信息的更多信息，请参阅[使用 CloudTrail 控制台查看活动副本详细信息](copy-trail-details.md)。

# 使用控制台将跟踪事件复制到新的事件数据存储
将跟踪事件复制到新的事件数据存储

本演练向您展示了如何将跟踪事件复制到新的 CloudTrail Lake 事件数据存储中以进行历史分析。有关复制跟踪事件的更多信息，请参阅[将跟踪事件复制到事件数据存储](cloudtrail-copy-trail-to-lake-eds.md)。

**将跟踪事件复制到新的事件数据存储**

1. 登录 Amazon Web Services 管理控制台 并打开 CloudTrail 控制台，网址为[https://console.aws.amazon.com/cloudtrail/](https://console.amazonaws.cn/cloudtrail/)。

1.  在导航窗格中，在 **Lake** 下，选择**事件数据存储**。

1. 选择**创建事件数据存储**。

1. 在**配置事件数据存储**页面上，在**常规详细信息**中，为您的事件数据存储命名，例如*my-management-events-eds*。作为最佳实践，请使用可快速识别事件数据存储用途的名称。有关 CloudTrail 命名要求的信息，请参见[CloudTrail 资源、S3 存储桶和 KMS 密钥的命名要求](cloudtrail-trail-naming-requirements.md)。

1. 选择您要用于事件数据存储的**定价选项**。定价选项决定了摄取和存储事件的成本，以及您的事件数据存储的默认和最长保留期。有关更多信息，请参阅 [Amazon CloudTrail 定价](https://www.amazonaws.cn/cloudtrail/pricing/) 和[管理 CloudTrail 湖泊成本](cloudtrail-lake-manage-costs.md)。

   可用选项如下：
   + **一年可延期保留定价**：如果您希望每月摄取的事件数据少于 25TB，并且想要灵活的保留期（最长 10 年），一般建议采用此选项。在前 366 天（默认保留期）内，存储包含在摄取定价中，没有额外收费。366 天后，可以按 pay-as-you-go定价延长保留期。这是默认选项。
     + **默认保留期：**366 天
     + **最长保留期：**3653 天
   + **七年期保留定价**：如果您希望每月摄取的事件数据大于 25TB，并且需要最长 7 年的保留期，则建议采用此选项。保留包含在摄取定价中，没有额外费用。
     + **默认保留期：**2557 天
     + **最长保留期：**2557 天

1. 指定事件数据存储的保留期。**一年可延期保留定价**选项的保留期可以介于 7 天到 3653 天（大约 10 年）之间，**七年期保留定价**选项的保留期可以介于 7 天到 2557 天（约七年）之间。

    CloudTrail Lake 通过检查事件是否在`eventTime`指定的保留期内来确定是否保留该事件。例如，如果您将保留期指定为 90 天，`eventTime`则 CloudTrail 会删除超过 90 天的事件。
**注意**  
CloudTrail 如果事件早于指定的保留期`eventTime`，则不会复制该事件。  
要确定适当的保留期，请计算要复制的最早事件（以天为单位）和要在事件数据存储中保留这些事件的天数（**保留期** = *oldest-event-in-days* \$1*number-days-to-retain*）的总和。例如，如果您要复制的最早事件已有 45 天，并且您想将事件在事件数据存储中再保留 45 天，则可以将保留期设置为 90 天。

1. （可选）在**加密**中，选择是否要使用自己的 KMS 密钥加密事件数据存储。默认情况下，事件数据存储中的所有事件都 CloudTrail 使用为您 Amazon 拥有和管理的 KMS 密钥进行加密。

   要使用自己的 KMS 密钥进行加密，请选择**使用我自己的 Amazon KMS key**。选择 “**新**建” 为您 Amazon KMS key 创建，或选择 “**现有” 以使用现**有 KMS 密钥。在**输入 KMS 别**名中，按格式指定别名`alias/`*MyAliasName*。使用自己的 KMS 密钥需要您编辑 KMS 密钥策略以允许对 CloudTrail日志进行加密和解密。有关更多信息，请参阅[为以下各项配置 Amazon KMS 密钥策略 CloudTrail](create-kms-key-policy-for-cloudtrail.md)。 CloudTrail 还支持 Amazon KMS 多区域密钥。有关多区域密钥的更多信息，请参阅 *Amazon Key Management Service 开发人员指南*中的[使用多区域密钥](https://docs.amazonaws.cn/kms/latest/developerguide/multi-region-keys-overview.html)。

   使用自己的 KMS 密钥会产生加密和解密 Amazon KMS 费用。在将事件数据存储与 KMS 密钥关联后，将无法移除或更改 KMS 密钥。
**注意**  
要为组织事件数据存储启用 Amazon Key Management Service 加密，必须使用管理账户的现有 KMS 密钥。

1. （可选）如果您想使用 Amazon Athena 对事件数据进行查询，请在 **Lake 查询联合身份验证**中选择**启用**。通过联合身份验证，您可以在 Amazon Glue [数据目录](https://docs.amazonaws.cn/glue/latest/dg/components-overview.html#data-catalog-intro)中查看与事件数据存储相关的元数据，并在 Athena 中对事件数据运行 SQL 查询。存储在 Amazon Glue 数据目录中的表元数据让 Athena 查询引擎知道如何查找、读取和处理您要查询的数据。有关更多信息，请参阅 [联合事件数据存储](query-federation.md)。

   要启用 Lake 查询联合身份验证，请选择**启用**，然后执行以下操作：

   1. 选择是要创建新角色还是使用现有 IAM 角色。[Amazon Lake Formation](https://docs.amazonaws.cn/lake-formation/latest/dg/how-it-works.html) 使用此角色管理联合事件数据存储的权限。使用 CloudTrail 控制台创建新角色时， CloudTrail 会自动创建一个具有所需权限的角色。如果您选择现有角色，请确保该角色的策略提供[所需的最低权限](query-federation.md#query-federation-permissions-role)。

   1. 如果您在创建新角色，请输入名称来标识该角色。

   1. 如果您使用现有角色，请选择要使用的角色。该角色必须存在于您的 账户中。

1. （可选）选择**启用资源策略**以向您的事件数据存储添加基于资源的策略。基于资源的策略可让您控制哪些主体可以对您的事件数据存储执行操作。例如，您可以添加基于资源的策略，允许其他账户中的根用户查询此事件数据存储并查看查询结果。有关示例策略，请参阅 [事件数据存储的基于资源的策略示例](security_iam_resource-based-policy-examples.md#security_iam_resource-based-policy-examples-eds)。

   基于资源的策略包括一个或多个语句。策略中的每条语句都定义了支持或拒绝访问事件数据存储的[主体](https://docs.amazonaws.cn/IAM/latest/UserGuide/reference_policies_elements_principal.html)以及主体可以对事件数据存储资源执行的操作。

   事件数据存储的基于资源的策略支持以下操作：
   +  `cloudtrail:StartQuery` 
   +  `cloudtrail:CancelQuery` 
   +  `cloudtrail:ListQueries` 
   +  `cloudtrail:DescribeQuery` 
   +  `cloudtrail:GetQueryResults` 
   +  `cloudtrail:GenerateQuery` 
   +  `cloudtrail:GenerateQueryResultsSummary` 
   +  `cloudtrail:GetEventDataStore` 

   对于[组织事件数据存储](cloudtrail-lake-organizations.md)， CloudTrail 创建[基于资源的默认策略，该策略](cloudtrail-lake-organizations.md#cloudtrail-lake-organizations-eds-rbp)列出了允许委派管理员帐户对组织事件数据存储执行的操作。此策略中的权限来自 Amazon Organizations中的委派管理员权限。在组织事件数据存储或组织发生更改后（例如，注册或删除了 CloudTrail 委托管理员帐户），此策略会自动更新。

1. （可选）在**标签**中，将一个或多个自定义标签（键值对）添加到事件数据存储中。标签可以帮助您识别您的 CloudTrail 事件数据存储。例如，您可以附加名称为 **stage**、值为 **prod** 的标签。您可以使用标签来限制对事件数据存储的访问。您还可以使用标签来跟踪事件数据存储的查询和摄取成本。

   有关如何使用标签跟踪成本的信息，请参阅[为 CloudTrail Lake 事件数据存储创建用户定义的成本分配标签](cloudtrail-budgets-tools.md#cloudtrail-lake-manage-costs-tags)。有关如何使用 IAM 策略根据标签授权对事件数据存储的访问，请参阅[示例：拒绝基于标签创建或删除事件数据存储的访问权限](security_iam_id-based-policy-examples.md#security_iam_id-based-policy-examples-eds-tags)。有关如何在中使用标签的信息 Amazon，请参阅《[标记 Amazon 资源用户指南](https://docs.amazonaws.cn/tag-editor/latest/userguide/tagging.html)*》中的为 Amazon 资源添加标签*。

1.  选择**下一步**以配置事件数据存储。

1.  在**选择事件**页面上，保留**事件类型**的默认选择。

1. 对于**CloudTrail 事件**，我们将选中**管理事件**，然后选择**复制跟踪事件**。在此示例中，我们并不关心事件类型，因为我们仅使用事件数据存储来分析过去的事件，而不是摄取未来的事件。

   如果您要创建事件数据存储来替换现有的跟踪，请选择与您的跟踪相同的事件选择器，以确保事件数据存储具有相同的事件覆盖范围。

1. 如果这是组织事件数据存储，请选择**为我组织中的所有账户启用**。除非您在 Amazon Organizations中配置了账户，否则此选项将不能进行更改。
**注意**  
如果您要创建组织事件数据存储，则必须使用组织的管理账户登录，因为只有管理账户才能将跟踪事件复制到组织事件数据存储。

1.  对于**其他设置**，我们将取消选择**摄取事件**，因为在此示例中，我们不希望事件数据存储摄取任何未来事件，我们只对查询复制的事件感兴趣。默认情况下，事件数据存储会收集所有人的事件， Amazon Web Services 区域 并在创建事件时开始摄取事件。

1. 对于**管理事件**，我们将保留默认设置。

1. 在**复制跟踪事件**区域中，完成以下步骤。

   1. 选择要复制的跟踪。在此示例中，我们将选择一个名为的跟踪*management-events*。

      默认情况下， CloudTrail 仅复制 S3 存储桶`CloudTrail`前缀中包含 CloudTrail 的事件和`CloudTrail`前缀中的前缀，而不检查其他 Amazon 服务的前缀。如果要复制其他前缀中包含 CloudTrail 的事件，**请选择输入 S3 URI**，然后选择**浏览 S3** 浏览到该前缀。如果跟踪的源 S3 存储桶使用 KMS 密钥进行数据加密，请确保 KMS 密钥策略 CloudTrail 允许解密数据。如果您的源 S3 存储桶使用多个 KMS 密钥，则必须更新每个密钥的策略 CloudTrail 以允许解密存储桶中的数据。有关更新 KMS 密钥政策的更多信息，请参阅[用于解密源 S3 存储桶中数据的 KMS 密钥政策](cloudtrail-copy-trail-to-lake-eds.md#copy-trail-events-permissions-kms)。

   1. 选择复制事件的时间范围。 CloudTrail 在尝试复制跟踪事件之前，请检查前缀和日志文件名以验证该名称是否包含所选开始日期和结束日期之间的日期。您可以选择一个**相对范围**或者**绝对范围**。为避免源跟踪和目标事件数据存储之间存在重复事件，请选择一个早于事件数据存储创建时间的时间范围。
      + 如果选择**相对范围**，则可以选择复制过去 6 个月、1 年、2 年、7 年或自定义范围内记录的事件。 CloudTrail 复制选定时间段内记录的事件。
      + 如果选择 “**绝对范围**”，则可以选择特定的开始和结束日期。 CloudTrail 复制在所选开始日期和结束日期之间发生的事件。

      在此示例中，我们将选择**绝对范围**，然后选择整个 5 月份。

   1. 对于**权限**，请从以下 IAM 角色选项中进行选择。如果您选择现有的 IAM 角色，请验证 IAM 角色策略是否提供了必要的权限。有关更新 IAM 角色权限的更多信息，请参阅[复制跟踪事件所需的 IAM 权限](cloudtrail-copy-trail-to-lake-eds.md#copy-trail-events-permissions-iam)。
      + 选择**创建新角色（推荐）**以创建新的 IAM 角色。在**输入 IAM 角色名称**中，输入角色的名称。 CloudTrail 会自动为这个新角色创建必要的权限。
      + 选择**使用自定义 IAM 角色 ARN**以使用未列出的自定义 IAM 角色。对于**输入 IAM 角色 ARN**，输入 IAM ARN。
      + 从下拉列表中选择现有的 IAM 角色。

      在此示例中，我们将选择**新建角色（推荐）**并提供名称 **copy-trail-events**。

1. 选择**下一步**以查看您的选择。

1. 在**查看并创建**页面上，审核您的选择。选择**编辑**以对这节进行更改。当您准备好创建事件数据存储时，选择**创建事件数据存储**。

1. 在**事件数据存储**页面上的**事件数据存储**表中可以看到新的事件数据存储。

1. 选择事件数据存储名称以查看其详细信息页面。详细信息页面显示事件数据存储的详细信息以及复制状态。事件复制状态显示在**事件复制状态**区域中。

   跟踪事件复制完成后，如果复制未出错，则**复制状态**将设置为**已完成**，否则如果出错了，则设置为**失败**。

1. 要查看有关复制的更多详细信息，请在**事件日志 S3 位置**列中选择复制名称，或从**操作**菜单中选择**查看详细信息**选项。有关查看跟踪事件复制详细信息的更多信息，请参阅[使用 CloudTrail 控制台查看活动副本详细信息](copy-trail-details.md)。

1.  **复制失败**区域显示复制跟踪事件时发生的所有错误。如果**复制状态**为**失败**，则要先修复**复制失败**中显示的所有错误，然后选择**重试复制**。当您重试复制时，会在出现故障的位置 CloudTrail 恢复副本。

# 使用 CloudTrail 控制台查看活动副本详细信息
查看事件复制详细信息

跟踪事件复制开始后，您可以查看事件复制详细信息，包括复制的状态以及有关任何复制失败的信息。

**注意**  
事件复制详细信息页面上显示的详细信息不是实时的。诸如**复制的前缀**之类的详细信息的实际值可能高于页面上显示的值。 CloudTrail 在事件副本的过程中以增量方式更新详细信息。

**访问事件复制详细信息页面**

1. 登录 Amazon Web Services 管理控制台 并打开 CloudTrail 控制台，网址为[https://console.aws.amazon.com/cloudtrail/](https://console.amazonaws.cn/cloudtrail/)。

1.  在左侧导航窗格中，在 **Lake** 下，选择**事件数据存储**。

1. 选择事件数据存储。

1. 在 **Event copy status**（事件复制状态）部分中选择事件复制。

## 复制详细信息


在 **Copy details**（复制详细信息）中，您可以查看有关跟踪事件复制的以下详细信息。
+ **Event log S3 location**（事件日志 S3 位置）– 包含跟踪事件日志文件的源 S3 存储桶的位置。
+ **Copy ID**（复制 ID）– 复制的 ID。
+ **Prefixes copied**（已复制的前缀）– 表示已复制的 S3 前缀的数量。在跟踪事件复制期间，将事件 CloudTrail 复制到存储在前缀中的跟踪日志文件中。
+ **Copy status**（复制状态）– 复制的状态。
  + **Initializing**（正在初始化）– 跟踪事件复制开始时显示的初始状态。
  + **In progress**（正在进行中）– 表示跟踪事件复制正在进行中。
**注意**  
当另一个跟踪事件复制 **In progress**（正在进行中）时，无法复制跟踪事件。要停止跟踪事件复制，请选择 **Stop copy**（停止复制）。
  + **Stopped**（已停止）– 表示发生了 **Stop copy**（停止复制）操作。要重试跟踪事件复制，请选择 **Retry copy**（重试复制）。
  + **Failed**（失败）– 复制已完成，但有些跟踪事件复制失败。查看 **Copy failures**（复制失败）中的错误消息。要重试跟踪事件复制，请选择 **Retry copy**（重试复制）。当您重试复制时，会在出现故障的位置 CloudTrail 恢复副本。
  + **Completed**（已完成）– 复制已完成，没有错误。您可以在事件数据存储中查询已复制的跟踪事件。
+ **Created time**（创建时间）– 表示跟踪事件复制的开始时间。
+ **Finish time**（完成时间）– 表示跟踪事件复制的完成或停止时间。

## 复制失败


 在 **Copy failures**（复制失败）中，您可以查看每次复制失败的错误发生位置、错误消息和错误类型。常见的失败原因包括 S3 前缀是否包含未压缩的文件，或者是否包含由之外的CloudTrail服务交付的文件。另一个可能的失败原因与访问问题有关。例如，如果事件数据存储的 S3 存储桶未授予导入事件的 CloudTrail 访问权限，则会`AccessDenied`出现错误。

在每次复制失败时，查看以下错误信息。
+  **Error location**（错误位置）– 表示 S3 存储桶中发生错误的位置。如果错误是由源 S3 存储桶包含未压缩的文件而导致的，则 **Error location**（错误位置）将包括您可以在其中找到该文件的前缀。
+  **Error message**（错误消息）– 解释错误发生原因。
+  **Error type**（错误类型）– 提供错误类型。例如，**Error type**（错误类型）`AccessDenied`显示错误原因为权限问题。有关复制跟踪事件所需权限的更多信息，请参阅[复制跟踪事件所需的权限](cloudtrail-copy-trail-to-lake-eds.md#copy-trail-events-permissions)。

解决所有失败问题后，选择 **Retry copy**（重试复制）。当您重试复制时，会在出现故障的位置 CloudTrail 恢复副本。