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

AWS S3跨地域PutObject Access Denied问题排查求助

S3跨地域上传权限问题解答

1. 桶策略是否需要添加s3:PutObject操作?

是的,当前你的桶策略仅允许读取类操作(s3:GetObject、s3:GetObjectAcl、s3:ListBucket),完全未包含上传所需的s3:PutObject权限(若需设置对象ACL,还需添加s3:PutObjectAcl)。

你和美国东海岸同事能上传的原因,大概率是你们使用的IAM凭证对应的身份(如IAM用户)本身被附加了允许s3:PutObject的IAM权限策略,此时IAM权限优先级覆盖了桶策略的限制;但欧洲同事出现报错,说明还有时间同步或区域配置这类叠加因素影响。

2. 地域差异是否会导致HMAC认证令牌的时间戳问题?

会。AWS HMAC签名验证要求请求的时间戳与AWS服务器的UTC时间偏差不得超过15分钟。如果欧洲同事的本地系统时间未同步到标准UTC时间(比如时区设置错误、系统时钟偏移过大),就会触发签名验证失败,返回Access Denied错误——这种情况在跨时区办公场景中非常常见。

3. 如何配置让合法凭证用户不受地域/时区限制上传?

按以下步骤调整:

  • 补充桶策略权限:在桶策略的Action数组中添加s3:PutObject(及s3:PutObjectAcl,若需设置对象权限),确保桶层面明确允许上传操作。修改后的桶策略示例:
    {
        "Version": "2012-10-17",
        "Id": "Policy12345",
        "Statement": [
            {
                "Sid": "Stmt6789",
                "Effect": "Allow",
                "Principal": "*",
                "Action": [
                    "s3:GetObject",
                    "s3:GetObjectAcl",
                    "s3:ListBucket",
                    "s3:PutObject",
                    "s3:PutObjectAcl"
                ],
                "Resource": [
                    "arn:aws:s3:::my-bucket",
                    "arn:aws:s3:::my-bucket/*"
                ]
            }
        ]
    }
    
  • 强制时间同步:要求所有用户的客户端系统同步到NTP服务器,确保本地时间与UTC时间偏差在15分钟内。Linux/macOS可使用chrony或ntpd服务,Windows可开启系统自动时间同步功能。
  • 确认区域配置:让欧洲同事检查AWS CLI的区域配置,确保指向桶所在的us-west-2区域。可运行aws configure get region确认,或在上传命令中显式指定--region us-west-2参数。
  • 验证IAM权限一致性:确认你们使用的IAM凭证对应的权限策略包含s3:PutObject及相关操作,避免仅依赖桶策略的权限控制,确保所有使用该凭证的用户都能获得上传权限。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.19 00:54:56