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

配置S3 Policy允许Application Load Balancer推送日志时报Invalid principal错误

配置错误点及修复方案

核心错误1:Principal字段配置不符合要求

你填入的arn:aws:iam:LoadBalancerId:root是无效主体:ALB推送访问日志时,使用的是AWS为每个区域分配的固定ELB服务账号作为授权主体,和你自身负载均衡器的ID无关,你不能直接用LoadBalancerID拼接成ARN作为Principal。

核心错误2:权限范围过大

你配置的s3:*全量S3权限存在严重安全风险,ALB仅需要s3:PutObject权限即可完成日志写入操作。


修复后的策略示例

你需要先查询你ALB所在区域对应的官方ELB服务账号ID,替换到下述策略的对应区域ELB服务账号ID位置,同时替换S3bucketname为你的实际桶名:

{
  "Id": "Policy1629585161607",
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "AllowALBPutLog",
      "Action": "s3:PutObject",
      "Effect": "Allow",
      "Resource": "arn:aws:s3:::S3bucketname/*",
      "Principal": {
        "AWS": "arn:aws:iam::对应区域ELB服务账号ID:root"
      }
    }
  ]
}

注:如果你的ALB日志配置了自定义前缀,需要把Resource字段修改为arn:aws:s3:::S3bucketname/你的前缀/*


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 18:39:00