我有两个存储桶,一个名为A
,另一个名为logs
。我转到权限页面A
并启用服务日志记录,并将目标设置为logs
存储桶。根据 AWS 文档,这应该可以启用日志记录。
Amazon S3 使用一个特殊的日志传送账户(称为日志传送组)来写入访问日志。这些写入受常规访问控制限制。您必须通过在存储桶的访问控制列表 (ACL) 中添加授权条目来授予日志传送组对目标存储桶的写入权限。如果您使用 Amazon S3 控制台在存储桶上启用日志记录,则控制台既会在源存储桶上启用日志记录,又会更新目标存储桶上的 ACL,以向日志传送组授予写入权限。
在将文件上传到 之前,我让存储桶闲置了几个小时A
,但我看不到任何日志。我理解上面的段落有误吗?我必须为 生成存储桶策略吗logs
?还是我遗漏了其他什么?
答案1
这部分引用是错误的。
“如果您使用 Amazon S3 控制台启用存储桶上的日志记录,则控制台既会启用源存储桶上的日志记录,也会更新目标存储桶上的 ACL,以向日志传送组授予写入权限。”
它无法保证始终成功更新目标存储桶上的 ACL。如果您的日志目标处于“阻止通过新访问控制列表 (ACL) 授予的存储桶和对象的公共访问”状态,则更新将失败。因此您的日志存储桶将无法按预期工作。
您应该检查日志存储桶。转到权限,检查公共访问中是否启用了“S3 日志传送组”。