【问题标题】:AWS S3 getObjectExist() returns 403 Forbidden [duplicate]AWS S3 getObjectExist() 返回 403 Forbidden [重复]
【发布时间】:2017-10-26 13:15:39
【问题描述】:

所以我自己回答了这个问题。将这段 json 添加到您的策略中:

    {
        "Sid": "AllowGetObjectExist",
        "Resource": ["*"],
        "Action": ["s3:ListBucket"],
        "Effect": "Allow"
    }

(假设您的策略中已经有“s3:GetObject”操作和另一个“Sid”。)

【问题讨论】:

  • 几乎和这个页面上的stackoverflow.com/questions/44256527/…一样。该页面还包含正确答案。如果我还没有答案,我会删除我的问题。
  • 请注意,如果 dosObjectExist 需要 s3:ListBucket,那么与仅执行 getObjectMetadata 并在对象不存在时捕获异常相比,您为每个请求支付更多的美元。不太清楚为什么这种方法是一回事。看起来既浪费又低效。

标签: amazon-s3 http-status-code-403


【解决方案1】:

您必须添加 s3:GetObject 操作,因为该方法会尝试“获取对象”而不是在列表中查找其名称。

【讨论】:

  • 我假设策略中已经存在“s3:GetObject”操作。但是只有这个动作不允许你使用getObjectExist()方法,你还需要“s3:ListBucket”动作。不知道为什么。
猜你喜欢
  • 2020-10-05
  • 2016-03-12
  • 1970-01-01
  • 1970-01-01
  • 2019-06-06
  • 1970-01-01
  • 2023-02-24
  • 2012-01-22
  • 1970-01-01
相关资源
最近更新 更多