You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

身为S3桶所有者却无法创建带标准日志的CloudFront分发

解决思路

1. 检查CloudFront服务关联角色权限

CloudFront需要具备向目标S3桶写入日志的权限,即便你是桶所有者,也要确认CloudFront的服务角色(通常为CloudFrontLoggingAccess)拥有对应权限:

  • 给该角色附加包含s3:PutObject和s3:ListBucket权限的策略,目标资源设为日志桶的ARN(arn:aws:s3:::my-bucket/*和arn:aws:s3:::my-bucket)。

2. 修正S3桶ACL配置

虽然你已添加awslogsdelivery账户的ACL,但需确认条目是否准确:

  • 给awslogsdelivery账户(规范用户ID为c4c1ede66af53448b93c283ce9448c4ba468c9432aa01d700d3878632f77d2d0)添加WRITE和READ_ACP权限即可,无需FULL_CONTROL(日志投递仅需这两项权限)。
  • 注:当Object Ownership设为Bucket owner preferred时,ACL的WRITE权限会让桶所有者自动获取日志对象的所有权,无需额外配置。

3. 验证S3桶策略(若有配置)

如果日志桶设置了桶策略,要确保没有拒绝CloudFront或awslogsdelivery的请求:

  • 检查桶策略是否包含允许aws:Principal/cloudfront.amazonaws.com或awslogsdelivery账户写入的语句,同时避免任何显式Deny语句覆盖权限。

4. 排查Block Public Access设置

虽然开启了Block all public access,但要确认是否影响AWS内部服务访问:

  • 可临时关闭Block public access to buckets and objects granted through any access control lists (ACLs)选项测试,排除ACL被拦截的问题(默认全量Block设置通常不会影响AWS内部服务,但特殊配置可能导致异常)。

5. 确认账户一致性

确保创建CloudFront分发和管理S3桶的是同一个AWS账户,避免跨账户操作(比如用子账户创建CloudFront但桶属于主账户,这种情况需额外配置跨账户权限)。

6. Terraform配置额外检查(若使用Terraform)

如果用Terraform部署,需确认:

  • CloudFront分发的logging_config中bucket字段正确设置为日志桶域名(my-bucket.s3.amazonaws.com),include_cookies保持默认false即可。
  • S3桶ACL资源块正确添加awslogsdelivery的权限,示例代码:
resource "aws_s3_bucket_acl" "log_bucket_acl" {
  bucket = aws_s3_bucket.log_bucket.id
  access_control_policy {
    grant {
      grantee {
        id   = "c4c1ede66af53448b93c283ce9448c4ba468c9432aa01d700d3878632f77d2d0"
        type = "CanonicalUser"
      }
      permission = "WRITE"
    }
    grant {
      grantee {
        id   = "c4c1ede66af53448b93c283ce9448c4ba468c9432aa01d700d3878632f77d2d0"
        type = "CanonicalUser"
      }
      permission = "READ_ACP"
    }
    owner {
      id = data.aws_caller_identity.current.account_id
    }
  }
}

内容的提问来源于stack exchange,提问作者d3vcho

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.12 17:55:11