Amazon S3 的日志记录选项
您可以记录用户、角色或 AWS 服务对 Amazon S3 资源所采取的操作,并维护日志记录以满足审计和合规性目的。为此,您可以使用服务器访问日志记录、AWS CloudTrail 日志记录,或两者的组合。我们建议您使用 CloudTrail 为您的 Amazon S3 资源记录存储桶级和对象级操作的日志。请参阅下面几节,了解有关每个选项的更多信息:
下表列出了 CloudTrail 日志和 Amazon S3 服务器访问日志的关键属性。要确保 CloudTrail 满足您的安全要求,请查看表和注释。
日志属性 | AWS CloudTrail | Amazon S3 服务器日志 |
---|---|---|
可以转发到其他系统(Amazon CloudWatch Logs、Amazon CloudWatch Events) |
是 |
No |
将日志传输到多个目标(例如,将相同的日志发送到两个不同的存储桶) |
是 |
No |
对对象的子级开启日志(前缀) |
是 |
No |
跨账户日志传输(不同账户拥有的目标和源存储桶) |
是 |
No |
使用数字签名或哈希对日志文件进行完整性验证 |
是 |
No |
默认或选择加密日志文件 |
是 |
No |
对象操作(使用 Amazon S3 API) |
是 |
是 |
存储桶操作(使用 Amazon S3 API) |
是 |
是 |
日志的可搜索 UI |
是 |
No |
对象锁定参数的字段,Amazon S3 选择日志记录的属性 |
是 |
No |
日志记录的 |
否 |
是 |
生命周期转换,过期,还原 |
否 |
是 |
批处理删除操作中键的日志记录 |
否 |
是 |
身份验证失败1 |
否 |
是 |
日志得到传输的账户 |
存储桶拥有者 2 以及请求者 |
仅限存储桶拥有者 |
Performance and Cost | AWS CloudTrail | Amazon S3 Server Logs |
价格 |
管理事件(第一次传输)免费;数据事件引发费用,此外还有日志存储 |
除日志存储之外,没有其他费用 |
日志传输的速度 |
每 5 分钟传输数据事件;每 15 分钟传输管理事件 |
几个小时内 |
日志格式 |
JSON |
具有以空格分隔、新行分隔的记录的日志文件 |
注意
-
CloudTrail 对于未通过身份验证(其中,提供的凭证无效)的请求不传输日志。但是,对于授权失败的请求 (
AccessDenied
) 和匿名用户发出的请求,它的确包括日志。 -
当账户对请求中的此对象没有完全访问权限时,S3 存储桶拥有者将接收 CloudTrail 日志。有关更多信息,请参阅 跨账户情形中的 Amazon S3 对象级操作。
-
对于 VPC 端点策略拒绝的 VPC 端点请求,或者对于在评估 VPC 策略之前失败的请求,S3 不支持向请求者或存储桶拥有者传输 CloudTrail 日志或服务器访问日志。