use*_*660 21 amazon-s3 amazon-web-services amazon-cloudfront
我尝试做的是通过AWS控制台为CloudFront发行版启用标准日志记录,如下图所示:
我设置了以下 S3 存储桶策略:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::931426637260:user/relu"
},
"Action": [
"s3:GetBucketAcl",
"s3:PutBucketAcl"
],
"Resource": "arn:aws:s3:::[...]"
}
]
}
Run Code Online (Sandbox Code Playgroud)
“阻止所有公共访问”已关闭。
不过,我不断收到此错误:
您为 CloudFront 日志指定的 S3 存储桶未启用 ACL 访问:[...].s3.amazonaws.com
即使我尝试以 root 用户身份启用日志记录,也会收到此错误。
有人知道可能出了什么问题吗?
Cla*_*ude 23
从 2023 年 4 月开始,您将需要为用于 CloudFront 标准日志的新 S3 存储桶启用 S3 访问控制列表 (ACL):
(截屏)

(尽管AWS同时告诉您不建议启用ACL)
S3 中的大多数现代用例不再需要使用 ACL,我们建议您禁用 ACL
据我所知,在将 CloudFront 日志放入存储桶时,无法遵守第二条消息/建议(禁用 ACL)。
如果您使用的是 UI,请参阅user3429660 的回答。
如果有人正在寻找如何在 CloudFormation 中执行此操作:
Bucket:
Type: AWS::S3::Bucket
Properties:
OwnershipControls:
Rules:
- ObjectOwnership: BucketOwnerPreferred
[....]
Run Code Online (Sandbox Code Playgroud)
(或者使用ObjectOwnership: ObjectWriter)
这就是所需要的全部;即使使用 CloudFormation,CloudFront Logger 也会自动将自身添加到 ACL(只要它们已启用)。
| 归档时间: |
|
| 查看次数: |
23552 次 |
| 最近记录: |