Har*_*eet 1 amazon-s3 amazon-web-services
我每个客户有 1 个 s3 存储桶。客户是外部实体,他们不与任何其他人共享数据。我写入 S3,客户从 S3 读取。根据这个架构,我只能扩展到 1000 个存储桶,因为每个账户的 s3 存储桶是有限制的。我希望使用 AP 为每个客户创建 1 个 AP 并将数据放在一个桶中。然后客户可以使用 AP 从存储桶中读取文件。
Bucket000001/prefix01 . -> customeraccount1
Bucket000001/prefix02 . -> customeraccount2
...
S3 访问点要求您在访问点以及存储桶级别为 IAM 用户设置策略。如果我有 1000 个 IAM 用户,我是否需要为存储桶中的每个用户设置策略?这将导致一项巨大的政策。存储桶中有最大策略大小,所以我可能无法做到这一点。这是接入点可以提供帮助的正确用例吗?
推荐的方法是:
选项 1:通过 Web 应用程序访问
如果您的客户通过 Web 应用程序访问 Amazon S3,那么您可以对该应用程序进行编码以在文件夹级别实施安全性。例如,当他们请求文件列表时,仅显示其文件夹中的文件。
这种安全性可以完全在您自己的代码中进行管理。
选项 2:通过临时凭证访问
如果您的客户使用编程访问(例如使用 AWS CLI 或在其系统上运行的自定义应用程序),则:
arn:aws:s3:::storage-bucket/customer1/*),以便他们只能访问其文件夹中的内容。这种方法通常用于移动应用程序。移动应用程序针对后端进行身份验证,接收临时凭证,然后使用这些凭证直接与 S3 交互。因此,后端应用程序仅用于身份验证。
YouTube 上的示例:
| 归档时间: |
|
| 查看次数: |
1247 次 |
| 最近记录: |