为 S3 存储桶和对象启用 CloudTrail 事件日志记录
您可以使用 CloudTrail 数据事件获取有关 Amazon S3 中存储桶和对象级别请求的信息。要为您的所有存储桶或特定存储桶列表启用 CloudTrail 数据事件,您必须在 CloudTrail 中手动创建跟踪记录。
注意
-
CloudTrail 的默认设置是仅查找管理事件。请检查以确保已为您的账户启用数据事件。
-
利用正在生成高工作负载的 S3 存储桶,您可以在很短时间内快速生成数千条日志。请注意您为某个繁忙存储桶启用 CloudTrail 数据事件所选择的时长。
CloudTrail 将 Amazon S3 数据事件日志存储在您选择的 S3 存储桶中。考虑在单独的 AWS 账户中使用一个存储桶将多个存储桶中您可能拥有的事件整理到一个集中位置,以便更轻松地进行查询和分析。AWS Organizations 可帮助您创建与拥有您所监控的存储桶的账户关联的 AWS 账户。有关更多信息,请参阅AWS Organizations《用户指南》中的什么是AWS Organizations?。
在 CloudTrail 中记录跟踪的数据事件时,您可以选择使用高级事件选择器或基本事件选择器,来记录存储在通用存储桶中的对象的数据事件。要记录存储在目录存储桶中的对象的数据事件,必须使用高级事件选择器。有关更多信息,请参阅使用 AWS CloudTrail 为 S3 Express One Zone 记录日志。
在 CloudTrail 控制台中使用高级事件选择器创建跟踪时,在数据事件部分中,您可以在记录选择器模板中选择记录所有事件,来记录所有对象级事件。在 CloudTrail 中使用基本事件选择器创建跟踪时,在数据事件部分中,您可以选中选择您账户中的所有 S3 存储桶复选框以记录所有对象级事件。
注意
-
最佳实践是为 AWS CloudTrail 数据事件存储桶创建生命周期配置。配置生命周期配置,以便在您认为需要审计日志文件的时间段之后定期删除这些日志文件。这样做可以减少 Athena 为每个查询分析的数据量。有关更多信息,请参阅 在存储桶上设置生命周期配置。
-
有关日志记录格式的更多信息,请参阅使用 AWS CloudTrail 记录 Amazon S3 API 调用。
-
有关如何查询 CloudTrail 日志的示例,请参阅 AWS 大数据博客文章使用 AWS CloudTrail 和 Amazon Athena 分析安全性、合规性和操作活动
。
使用控制台为存储桶中的对象启用日志记录功能
您可以使用 Amazon S3 控制台配置 AWS CloudTrail 跟踪来记录 S3 存储桶中的对象的数据事件。CloudTrail 支持记录 Amazon S3 对象级别 API 操作,例如 GetObject
、DeleteObject
和 PutObject
。这些事件称为数据事件。
默认情况下,CloudTrail 跟踪不会记录数据事件,但您可以将跟踪配置为记录您指定的 S3 存储桶的数据事件,或记录 AWS 账户 中所有 Amazon S3 存储桶的数据事件。有关更多信息,请参阅 使用 AWS CloudTrail 记录 Amazon S3 API 调用。
CloudTrail 不会在 CloudTrail 事件历史记录中填充数据事件。此外,并非所有存储桶级别的操作都会填充在 CloudTrail 事件历史记录中。有关 CloudTrail 日志记录跟踪的 Amazon S3 存储桶级 API 操作的更多信息,请参阅CloudTrail 日志记录跟踪的 Amazon S3 存储桶级操作。有关如何查询 CloudTrail 日志的更多信息,请参阅关于使用 Amazon CloudWatch Logs 筛选条件模式和 Amazon Athena 查询 CloudTrail 日志
要配置跟踪以记录某个 S3 存储桶的数据事件,您可以使用 AWS CloudTrail 控制台或 Amazon S3 控制台。如果您要配置跟踪以记录您的 AWS 账户 中所有 Amazon S3 存储桶的数据事件,使用 CloudTrail 控制台会更轻松。有关使用 CloudTrail 控制台配置跟踪以记录 S3 数据事件的信息,请参阅 AWS CloudTrail 用户指南中的数据事件。
重要
记录数据事件将收取额外费用。有关更多信息,请参阅 AWS CloudTrail 定价
以下过程演示如何使用 Amazon S3 控制台配置 CloudTrail 跟踪来记录 S3 存储桶的数据事件。
为 S3 通用存储桶或 S3 目录存储桶中的对象启用 CloudTrail 数据事件日志记录
登录到AWS Management Console,然后通过以下网址打开 Amazon S3 控制台:https://console.aws.amazon.com/s3/
。 -
在 Buckets(存储桶)列表中,请选择存储桶的名称。
-
选择 Properties (属性)。
-
在 AWS CloudTrail data events (Amazon CloudTrail 数据事件) 下,请选择 Configure in CloudTrail (在 CloudTrail 中配置)。
您可以创建新的 CloudTrail 跟踪或重复使用现有跟踪,并配置要在跟踪中记录的 Amazon S3 数据事件。有关如何在 CloudTrail 控制台中创建跟踪的信息,请参阅 AWS CloudTrail 用户指南中的使用控制台创建和更新跟踪。有关如何在 CloudTrail 控制台中配置 Amazon S3 数据事件日志记录的信息,请参阅 AWS CloudTrail 用户指南中的记录 Amazon S3 对象的数据事件。
注意
如果您使用 CloudTrail 控制台或 Amazon S3 控制台配置某个跟踪以记录 S3 存储桶的数据事件,Amazon S3 控制台将显示已为该存储桶启用对象级别日志记录。
为 S3 存储桶中的对象禁用 CloudTrail 数据事件日志记录
登录到 AWS Management Console,然后通过以下网址打开 CloudTrail 控制台:https://console.aws.amazon.com/cloudtrail
。 -
在左侧导航窗格中,选择跟踪。
-
选择您创建用于记录存储桶的事件的跟踪名称。
-
在跟踪的详细信息页面上,选择右上角的停止记录。
-
在随后显示的对话框中,选择停止记录。
有关创建 S3 存储桶时启用对象级别日志记录的信息,请参阅 创建存储桶。
有关使用 S3 存储桶进行 CloudTrail 日志记录的更多信息,请参阅以下主题:
-
AWS CloudTrail 用户指南中的使用 CloudTrail 日志文件