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

如何修复AWS S3 Bucket Policy的Invalid Principal Format错误?

解决S3 Bucket Policy指定IAM组为Principal时的格式错误问题

问题原因

S3存储桶策略不支持直接将IAM组的ARN作为Principal,这是AWS的权限规则限制,因此会抛出"Invalid Principal Format"错误。

解决方案

有两种可行的解决方式:

方式一:指定组内的IAM用户ARN作为Principal

如果组内用户数量不多,可以直接将每个用户的ARN列在Principal中:

{
    "Principal": {
        "AWS": [
            "arn:aws:iam::1234566789:user/user1",
            "arn:aws:iam::1234566789:user/user2"
        ]
    },
    "Sid": "writeAll",
    "Effect": "Allow",
    "Action": [
        "s3:PutObject"
    ],
    "Resource": [
       "arn:aws:s3:::bucket",
       "arn:aws:s3:::bucket/*"
    ]
}

方式二:给IAM组附加IAM权限策略(推荐)

放弃修改S3桶策略,转而创建IAM权限策略并附加到目标IAM组上,这种方式更符合IAM权限管理的最佳实践:

  1. 创建如下IAM权限策略:
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "s3:PutObject",
            "Resource": [
                "arn:aws:s3:::bucket",
                "arn:aws:s3:::bucket/*"
            ]
        }
    ]
}
  1. 将该策略附加到mygroup这个IAM组上,组内所有用户会自动获得对应的S3访问权限。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.28 03:57:08