【发布时间】:2019-02-23 10:22:11
【问题描述】:
我想做以下事情:
- 只有一个桶
- 让多个用户能够添加/读取/访问具有特定项目文件夹前缀的对象
- 不允许其他用户访问他们不属于的对象
例如,如果您有一个 id 为1 的项目,则多个用户可以在其下创建对象:
user_1 已创建
1/image_1.jpguser_2 读取
1/image_1.jpguser_2 创建了
1/image_2.jpg
但是,不属于“项目”的用户不能:
不允许 user_3 读取
1/image_1.jpg
我在网上找到的所有内容都围绕着每个拥有自己文件夹的用户,方法是创建一个 IAM 角色,该角色只允许访问以用户 ID 为前缀的对象。这种方法创建用户文件夹,我想要项目文件夹。
【问题讨论】:
-
您的用户是否在您的公司工作并拥有 IAM 凭证,或者他们只是通过 Internet 访问应用程序的应用程序用户?通常,IAM 用户应该只为使用您的 AWS 系统的员工创建。另外,“项目”是如何管理的?是否有一些应用程序决定了他们可以访问什么?
-
不,他们没有。我的印象是 IAM 角色专门用于您没有常规 IAM 凭证的情况 描述这种情况的最佳方式就像使用 Cognito 注册/登录的网站,您可以创建共享相册。至于访问,我有一个数据库来跟踪谁可以编辑什么,我只是不确定将它链接到 S3 的最佳方式是什么。到目前为止,看起来我必须上传到节点/快递 API,然后检查权限并自行上传图片,但我希望让用户使用 IAM 角色直接上传到 S3。
标签: amazon-web-services amazon-s3 amazon-iam