【问题标题】:AWS S3 AccessDenied. Bucket permissions are granted, so do I need Bucket Policy when I am the user?AWS S3 访问被拒绝。存储桶权限被授予,那么当我是用户时,我需要存储桶策略吗?
【发布时间】:2012-01-31 04:20:38
【问题描述】:

当我测试将图像上传到我的 S3 存储桶时,我得到一个 AWS::S3::AccessDenied(使用 Ruby on Rails)。该代码使用我自己的安全密钥和密码到我自己的存储桶,我拥有授予自己的所有权限(列表、上传/删除、查看权限、编辑权限)。

我是否还需要通过输入存储桶策略来设置 ACL 权限?我不明白为什么这是必要的,因为我的代码使用我自己的帐户密钥来访问 S3。此外,图像在我的网站上显示良好,因此读取权限似乎没有问题。

【问题讨论】:

    标签: amazon-s3


    【解决方案1】:

    您根本不需要在存储桶上设置任何策略,应该删除它们,至少让事情正常运行。也不需要设置任何 ACL。

    账户持有人的 AWS ID + 密钥可以访问存储桶中的所有内容,而无需任何 ACL 或策略集。

    一旦您开始使用它,您可能希望使用 amazon IAM 创建一个访问量低于完整帐户持有人的“用户”,并在您的 ruby​​ 代码中使用该用户的凭证来处理上传。

    我知道您希望上传的图片可以公开阅读,为此您需要一个策略或 ACL,但这不应该干扰上传。您可以稍后打开一些只读访问权限。

    还可以在 Cyber​​duck 等工具中尝试这些 AWS 密钥和秘密,看看它是您的 ruby​​ 代码还是 ID。

    【讨论】:

      猜你喜欢
      • 2017-12-04
      • 2018-01-10
      • 2019-04-28
      • 2019-02-03
      • 2019-11-09
      • 1970-01-01
      • 1970-01-01
      • 2019-04-21
      • 2019-04-20
      相关资源
      最近更新 更多