使用控制台为事件创建 CloudTrail事件数据存储 - Amazon CloudTrail
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

使用控制台为事件创建 CloudTrail事件数据存储

事件 CloudTrail 的事件数据存储可以包括 CloudTrail 管理事件、数据事件和网络活动事件。如果您选择一年可延期保留定价选项,则可以将事件数据在事件数据存储中最多保留 3653 天(大约 10 年);如果您选择七年保留定价选项,则最多可以保留 2557 天(大约 7 年)。

注意

网络活动事件处于预览版 CloudTrail ,可能会发生变化。

CloudTrail 湖泊事件数据存储会产生费用。创建事件数据存储时,您可以选择要用于事件数据存储的定价选项。定价选项决定了摄取和存储事件的成本,以及事件数据存储的默认和最长保留期。有关 CloudTrail 定价和管理 Lake 成本的信息,请参阅Amazon CloudTrail 定价管理 CloudTrail 湖泊成本

为事件创建事件数据存 CloudTrail 储

使用此过程创建用于记录 CloudTrail 管理事件、数据事件或网络活动事件的事件数据存储。

  1. 登录 Amazon Web Services Management Console 并打开 CloudTrail 控制台,网址为https://console.aws.amazon.com/cloudtrail/

  2. 在导航窗格中,在 Lake 下,选择事件数据存储

  3. 选择 Create event data store(创建事件数据存储)。

  4. Configure event data store(配置事件数据存储)页面上的 General details(一般细节)中,输入事件数据存储的名称。名称为必填项。

  5. 选择您要用于事件数据存储的定价选项。定价选项决定了摄取和存储事件的成本,以及您的事件数据存储的默认和最长保留期。有关更多信息,请参阅 Amazon CloudTrail 定价管理 CloudTrail 湖泊成本

    可用选项如下:

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

      • 默认保留期:366 天

      • 最长保留期:3653 天

    • 七年期保留定价 - 如果您希望每月摄取的事件数据大于 25TB,并且需要最长 7 年的保留期,则建议采用此选项。保留包含在摄取定价中,没有额外费用。

      • 默认保留期:2557 天

      • 最长保留期:2557 天

  6. 指定事件数据存储的保留期。一年可延期保留定价选项的保留期可以介于 7 天到 3653 天(大约 10 年)之间,七年期保留定价选项的保留期可以介于 7 天到 2557 天(约七年)之间。

    CloudTrail Lake 通过检查事件是否在eventTime指定的保留期内来确定是否保留该事件。例如,如果您将保留期指定为 90 天,eventTime则 CloudTrail 会删除超过 90 天的事件。

    注意

    如果您要将跟踪事件复制到此事件数据存储中,则 CloudTrail 不会复制超过指定保留期的事件。eventTime要确定适当的保留期,请计算要复制的最早事件(以天为单位)和要在事件数据存储中保留这些事件的天数(保留期 = oldest-event-in-days +number-days-to-retain)的总和。例如,如果您要复制的最早事件已有 45 天,并且您想将事件在事件数据存储中再保留 45 天,则可以将保留期设置为 90 天。

  7. (可选)要使用启用加密 Amazon Key Management Service,请选择使用我自己的加密 Amazon KMS key。选择 “建” 为您 Amazon KMS key 创建密钥,或选择 “现有” 以使用现有KMS密钥。在输入KMS别名中,按格式指定别名alias/MyAliasName。使用自己的KMS密钥需要您编辑KMS密钥策略以允许对事件数据存储进行加密和解密。有关更多信息,请参阅为以下各项配置 Amazon KMS 密钥策略 CloudTrail。 CloudTrail 还支持 Amazon KMS 多区域密钥。有关多区域密钥的更多信息,请参阅 Amazon Key Management Service 开发人员指南中的使用多区域密钥

    使用自己的KMS密钥会产生加密和解密的 Amazon KMS 费用。将事件数据存储与KMS密钥关联后,该密KMS钥将无法移除或更改。

    注意

    要为组织事件数据存储启用 Amazon Key Management Service 加密,必须使用管理账户的现有KMS密钥。

  8. (可选)如果您想使用 Amazon Athena 对事件数据进行查询,请在 Lake 查询联合身份验证中选择启用。Federation 允许您在数据目录中查看与事件数据存储相关的元 Amazon Glue 数据,并对 Athena 中的事件数据运行SQL查询。存储在 Amazon Glue 数据目录中的表元数据让 Athena 查询引擎知道如何查找、读取和处理您要查询的数据。有关更多信息,请参阅 联合事件数据存储

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

    1. 选择是要创建新角色还是使用现有IAM角色。 Amazon Lake Formation使用此角色管理联合事件数据存储的权限。使用 CloudTrail 控制台创建新角色时, CloudTrail 会自动创建一个具有所需权限的角色。如果您选择现有角色,请确保该角色的策略提供所需的最低权限

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

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

  9. (可选)选择 “启用资源策略”,将基于资源的策略添加到您的事件数据存储中。基于资源的策略允许您控制哪些委托人可以对您的事件数据存储执行操作。例如,您可以添加基于资源的策略,允许其他账户中的根用户查询此事件数据存储并查看查询结果。有关示例策略,请参阅 事件数据存储的基于资源的策略示例

    基于资源的策略包括一个或多个声明。策略中的每条语句都定义了允许或拒绝访问事件数据存储的主体,以及委托人可以对事件数据存储资源执行的操作。

    基于资源的事件数据存储策略支持以下操作:

    • cloudtrail:StartQuery

    • cloudtrail:CancelQuery

    • cloudtrail:ListQueries

    • cloudtrail:DescribeQuery

    • cloudtrail:GetQueryResults

    • cloudtrail:GenerateQuery

    • cloudtrail:GenerateQueryResultsSummary

    • cloudtrail:GetEventDataStore

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

  10. (可选)在 Tags(标签)部分中,您最多可以添加 50 个标签键对,以帮助您对事件数据存储的访问进行识别、排序和控制。有关如何使用IAM策略根据标签授权对事件数据存储的访问权限的更多信息,请参阅示例:拒绝基于标签创建或删除事件数据存储的访问权限。有关如何在中使用标签的更多信息 Amazon,请参阅《标记 Amazon 资源用户指南》中的为 Amazon 资源添加标签

  11. 选择 Next(下一步)以配置事件数据存储。

  12. “选择事件” 页面上,选择Amazon 事件,然后选择CloudTrail事件

  13. 对于CloudTrail 事件,请至少选择一种事件类型。默认情况下,已选中 Management events(管理事件)。您可以将管理事件数据事件网络活动事件添加到事件数据存储。

  14. (可选)如果要从现有跟踪中复制事件以对过往事件运行查询,请选择 Copy trail events(复制跟踪事件)。要将跟踪事件复制到组织事件数据存储,必须使用该组织的管理账户。委托管理员账户无法将跟踪事件复制到组织事件数据存储。有关复制跟踪事件注意事项的更多信息,请参阅 复制跟踪事件的注意事项

  15. 要让您的事件数据存储收集 Amazon Organizations 企业中所有账户的事件,请选择 Enable for all accounts in my organization(为我的企业中的所有账户启用)。您必须登录到组织的管理账户或委托管理员账户,才能创建为组织收集事件的事件数据存储。

    注意

    要复制跟踪事件或启用 Insights 事件,您必须登录组织的管理账户。

  16. 展开其他设置以选择是希望事件数据存储收集所有 Amazon Web Services 区域事件还是仅收集当前事件 Amazon Web Services 区域,并选择事件数据存储是提取事件。默认情况下,您的事件数据存储会收集您账户中所有区域的事件,并在事件创建后开始摄取事件。

    1. 选择在我的事件数据存储中仅包含当前区域,以便仅包含在当前区域中记录的事件。如果不选择此选项,则您的事件数据存储将包含来自所有区域的事件。

    2. 如果您不希望事件数据存储开始摄取事件,请取消选择摄取事件。例如,如果您要复制跟踪事件并且不希望事件数据存储包含任何未来事件,则可能需要取消选择摄取事件。默认情况下,事件数据存储会在创建事件时开始摄取事件。

  17. 如果您的事件数据存储包括管理事件,您可以从以下选项中进行选择。有关管理事件的更多信息,请参阅记录管理事件

    1. 简单事件收集或高级事件收集之间进行选择:

      • 如果要记录所有事件、仅记录读取事件或仅记录写入事件,请选择简单事件收集。您也可以选择排除 Amazon Key Management Service 和 Amazon RDS 数据API事件。

      • 如果要根据高级事件选择器字段的值(包括、、、和userIdentity.arn字段)包含或排除管理事件 eventName eventType eventSourcesessionCredentialFromConsole,请选择高级事件收集

    2. 如果您选择了简单事件收集,请选择是要记录所有事件、仅记录读取事件还是仅记录写入事件。您也可以选择排除 Amazon KMS 和 Amazon RDS 数据API事件。

    3. 如果您选择了高级事件收集,请进行以下选择:

      1. 日志选择器模板中,选择一个模板,或者选择自定义以基于高级事件选择器字段值构建自定义配置。

      2. (可选)在选择器名称中,输入用于标识选择器的名称。选择器名称是高级事件选择器的描述性名称,例如 “记录 Amazon Web Services Management Console 会话中的管理事件”。选择器名称在高级事件选择器Name中列出,如果展开视图,则可以JSON查看

      3. 如果选择 “自定义”,则在 “高级” 事件选择器中基于高级事件选择器字段值构建表达式。

        注意

        选择器不支持使用通配符,例如。*要将多个值与单个条件匹配,可以使用StartsWithEndsWithNotStartsWith、或NotEndsWith明确匹配事件字段的开头或结尾。

        1. 从下面的字段中选择。

          • readOnlyreadOnly 可以设置为等于truefalse的值。如果将其设置为false,则事件数据存储会记录只写管理事件。只读管理事件是指不会更改资源状态的事件,例如Get*Describe*事件。写入事件可添加、更改或删除资源、属性或构件,例如 Put*Delete*Write* 事件。要同时记录读取写入事件,请不要添加readOnly选择器。

          • eventNameeventName 可以使用任何运算符。您可以使用它来包含或排除任何管理事件,例如CreateAccessPointGetAccessPoint

          • userIdentity.arn— 包括或排除特定IAM身份所采取行动的事件。有关更多信息,请参阅CloudTrail userIdentity 元素

          • sessionCredentialFromConsole— 包括或排除源自 Amazon Web Services Management Console 会话的事件。可以将此字段设置为等于不等于,值为。true

          • eventSource— 您可以使用它来包含或排除特定的事件源。通常eventSource是服务名称的简短形式,不带空格加号.amazonaws.com。例如,您可以将eventSource号设置为仅记录 Amazon EC2 管理事件。ec2.amazonaws.com

          • eventTypeeventType要包含或排除的。例如,您可以将此字段设置为 not e quals AwsServiceEvent 以排除Amazon Web Services 服务 事件

        2. 对于每个字段,请选择 + 条件以根据需要添加任意数量的条件,所有条件总共可有最多 500 个指定值。

          有关如何 CloudTrail 评估多个条件的信息,请参阅如何 CloudTrail 评估一个字段的多个条件

          注意

          对于事件数据存储上的所有选择器,最多可以有 500 个值。这包括选择器的多个值的数组,例如 eventName。如果所有选择器均为单个值,则最多可以向选择器添加 500 个条件。

        3. 根据需要,选择 + Field(+ 字段)以添加其他字段。为了避免错误,请不要为字段设置冲突或重复的值。

      4. (可选)展开JSON视图,将您的高级事件选择器视为一个JSON方块。

    4. 选择 “启用洞察事件捕获” 以启用见解。要启用 Insights,您需要设置目标事件数据存储来将根据该事件数据存储中的管理事件活动收集 Insights 事件。

      如果您选择启用 Insights,请执行以下操作。

      1. 选择将记录 Insights 事件的目标事件存储。目标事件数据存储将根据该事件数据存储中的管理事件活动收集 Insights 事件。有关如何创建目标事件数据存储的信息,请参阅要创建记录 Insights 事件的目标事件数据存储

      2. 选择 Insights 类型。您可以选择API呼叫速率API错误率或两者兼而有之。您必须记录写入管理事件才能记录API通话费率的 Insights 事件。您必须记录读取写入管理事件才能记录 Insights 事件以了解API错误率

  18. 要在事件数据存储中包含数据事件,请执行以下操作。

    1. 选择资源类型。这是记录数据事件的 Amazon Web Services 服务 和资源。

    2. Log selector template(日志选择器模板)中,选择一个模板。您可以选择记录所有数据事件、readOnly 事件、writeOnly 事件,或者通过 Custom(自定义)来构建自定义日志选择器。

    3. (可选)在选择器名称中,输入用于标识选择器的名称。选择器名称是高级事件选择器的描述性名称,例如“仅记录两个 S3 桶的数据事件”。选择器名称在高级事件选择器Name中列出,如果展开视图,则可以JSON查看

    4. 如果您选择了 “自定义”,则在 “高级” 事件选择器中,将基于高级事件选择器字段的值生成表达式。

      注意

      选择器不支持使用通配符,例如。*要将多个值与单个条件匹配,可以使用StartsWithEndsWithNotStartsWith、或NotEndsWith明确匹配事件字段的开头或结尾。

      1. 从下面的字段中选择。

        • readOnly - readOnly 可以设置为等于truefalse。只读数据事件是不会更改资源状态的事件,例如 Get*Describe* 事件。写入事件可添加、更改或删除资源、属性或构件,例如 Put*Delete*Write* 事件。要记录 readwrite 两种事件,请不要添加 readOnly 选择器。

        • eventName - eventName 可以使用任何运算符。您可以使用它来包含或排除记录到的任何数据事件 CloudTrail,例如PutBucketGetItem、或GetSnapshotBlock

        • eventSource— 要包含或排除的事件源。此字段可以使用任何运算符。

        • eventType— 要包含或排除的事件类型。例如,您可以将此字段设置为不等AwsServiceEvent于排Amazon Web Services 服务 事件。有关事件类型的列表,请参阅eventType中的CloudTrail 录制内容

        • sessionCredentialFrom控制台-包括或排除源自 Amazon Web Services Management Console 会话的事件。可以将此字段设置为等于不等于,值为。true

        • userIdentity.arn-包含或排除特定IAM身份采取的操作的事件。有关更多信息,请参阅CloudTrail userIdentity 元素

        • resources.ARN-您可以将任何运算符与一起使用resources.ARN,但是如果您使用于或不等于,则该ARN值必须与您在模板中指定为的值的resources.type有效资源的值完全匹配。有关更多信息,请参阅 通过 resources.ARN 筛选数据事件

          注意

          您不能使用该resources.ARN字段筛选没有的资源类型ARNs。

        有关数据事件资源ARN格式的更多信息,请参阅Amazon Identity and Access Management 用户指南中的操作、资源和条件键

      2. 对于每个字段,请选择 + 条件以根据需要添加任意数量的条件,所有条件总共可有最多 500 个指定值。例如,要从事件数据存储中记录的数据事件中排除两个 S3 存储桶的数据事件,可以将该字段设置为资源。 ARN,将运算符设置为 “不是” 开头,然后粘贴到您不想ARN为其记录事件的 S3 存储桶中。

        要添加第二个 S3 存储桶,请选择 + Condition,然后重复前面的指令,粘贴到 f ARN or 中或浏览其他存储桶。

        有关如何 CloudTrail 评估多个条件的信息,请参阅如何 CloudTrail 评估一个字段的多个条件

        注意

        对于事件数据存储上的所有选择器,最多可以有 500 个值。这包括选择器的多个值的数组,例如 eventName。如果所有选择器均为单个值,则最多可以向选择器添加 500 个条件。

      3. 根据需要,选择 + Field(+ 字段)以添加其他字段。为了避免错误,请不要为字段设置冲突或重复的值。例如,不要将一个选择器ARN中的一个指定为等于一个值,然后在另一个选择器中指定ARN不等于相同的值。

    5. (可选)展开JSON视图,将您的高级事件选择器视为一个JSON方块。

    6. 要添加其他用于记录数据事件的资源类型,请选择添加数据事件类型。重复步骤 a 至此步骤,为资源类型配置高级事件选择器。

  19. 要在事件数据存储中包含网络活动事件,请执行以下操作。

    1. 网络活动事件源中,选择网络活动事件的来源。

    2. Log selector template(日志选择器模板)中,选择一个模板。您可以选择记录所有网络活动事件、记录所有网络活动访问被拒绝的事件,或者选择自定义来构建自定义日志选择器以筛选多个字段(例如 eventNamevpcEndpointId)。

    3. (可选)输入用于标识选择器的名称。选择器名称在高级事件选择器中列为名称,如果您展开视图,则可以JSON查看

    4. 高级事件选择器中,通过为字段运算符选择值来构建表达式。如果您使用的是预定义日志模板,则可跳过此步骤。

      1. 要排除或包括网络活动事件,您可以从控制台中的以下字段中进行选择。

        • eventName – 您可以将任何运算符与 eventName 配合使用。您可以使用它来包含或排除任何事件(如 CreateKey)。

        • errorCode – 您可以使用它来筛选错误代码。目前,唯一支持的 errorCodeVpceAccessDenied

        • vpcEndpointId— 标识操作所经过的VPC端点。您可以将任何运算符与 vpcEndpointId 配合使用。

      2. 对于每个字段,请选择 + 条件以根据需要添加任意数量的条件,所有条件总共可有最多 500 个指定值。

      3. 根据需要,选择 + Field(+ 字段)以添加其他字段。为了避免错误,请不要为字段设置冲突或重复的值。

    5. 要添加您想要记录网络活动事件的另一个事件源,请选择添加网络活动事件选择器

    6. (可选)展开JSON视图,将您的高级事件选择器视为一个JSON方块。

  20. 要将现有跟踪事件复制到您的事件数据存储,请执行以下操作。

    1. 选择要复制的跟踪。默认情况下, CloudTrail 仅复制 S3 存储桶CloudTrail前缀中包含 CloudTrail 的事件和CloudTrail前缀中的前缀,而不检查其他 Amazon 服务的前缀。如果要复制其他前缀中包含 CloudTrail 的事件,请选择 Enter S3 URI,然后选择 Browse S3 浏览到该前缀。如果跟踪的源 S3 存储桶使用KMS密钥进行数据加密,请确保KMS密钥策略 CloudTrail 允许解密数据。如果您的源 S3 存储桶使用多个KMS密钥,则必须更新每个密钥的策略 CloudTrail 以允许解密存储桶中的数据。有关更新KMS密钥策略的更多信息,请参阅KMS用于解密源 S3 存储桶中数据的密钥策略

    2. 选择复制事件的时间范围。 CloudTrail 在尝试复制跟踪事件之前,请检查前缀和日志文件名以验证该名称是否包含所选开始日期和结束日期之间的日期。您可以选择 Relative range(相对范围)或者 Absolute range(绝对范围)。为避免源跟踪和目标事件数据存储之间存在重复事件,请选择一个早于事件数据存储创建时间的时间范围。

      注意

      CloudTrail 仅复制在事件数据存储保留期eventTime内的跟踪事件。例如,如果事件数据存储的保留期为 90 天,则 CloudTrail 不会复制任何eventTime超过 90 天的跟踪事件。

      • 如果选择 “相对范围”,则可以选择复制过去 6 个月、1 年、2 年、7 年或自定义范围内记录的事件。 CloudTrail 复制选定时间段内记录的事件。

      • 如果选择 “绝对范围”,则可以选择特定的开始和结束日期。 CloudTrail 复制在所选开始日期和结束日期之间发生的事件。

    3. 对于权限,请从以下IAM角色选项中进行选择。如果您选择现有IAM角色,请验证该IAM角色策略是否提供了必要的权限。有关更新IAM角色权限的更多信息,请参阅IAM复制跟踪事件的权限

      • 选择创建新角色(推荐)以创建新IAM角色。在输入IAM角色名称中,输入角色的名称。 CloudTrail 会自动为这个新角色创建必要的权限。

      • 选择 “使用自定义IAM角色” ARN 以使用未列出的自定义IAM角色。对于 “输入IAM角色”ARN,输入IAMARN。

      • 从下拉列表中选择现有IAM角色。

  21. 选择 Next(下一步)以查看您的选择。

  22. Review and create(审核和重建)页面上,审核您的选择。选择 Edit(编辑)以对这节进行更改。当您准备好创建事件数据存储时,选择 Create event data store(创建事件数据存储)。

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

    从现在开始,事件数据存储将捕获与其高级事件选择器匹配的事件(如果保持选中摄取事件选项)。除非选择复制现有跟踪事件,否则在创建事件数据存储之前发生的事件不会出现在该事件数据存储中。

现在,您可以对新的事件数据存储运行查询。Sample queries(示例查询)选项卡提供了示例查询,以帮助您入门。有关创建和编辑查询的更多信息,请参阅使用 CloudTrail 控制台创建或编辑查询

您还可以查看托管仪表板,或创建自定义仪表板以可视化事件趋势。有关 Lake 控制面板的更多信息,请参阅CloudTrail 湖泊仪表板