如何在Aws S3存储桶中为每个用户保护动态创建和命名的“目录”

时间:2019-05-02 09:13:19

标签: amazon-web-services amazon-s3 amazon-iam

我正在寻求有关如何保护Aws S3存储桶中每个用户动态创建和命名的“目录”的帮助。我查看了许多AWS S3和IAM文档,但在无法太快达到AWS极限的情况下,我找不到实现我想要的方法的``最佳方法''...注意:我只需要使用AWS S3来存储文件和实体数据来自我的数据库(例如用户和书籍uuid,请参见下文)。

让我解释一下:

我有什么

  • 我自己的数据库存储着两个实体的用户和书籍数据(例如v4 uuid)以及其他一些对AWS无用的数据。
  • 动态创建的以生成的v4 uuid命名的AWS IAM编程用户。
  • 一个S3存储桶,其中包含«books»目录中生成的v4 uuid命名的«directories»(我知道s3中没有«Directory»)。 不幸的是,我不想根据uuid v4用户来创建结构,因为多个用户可以处理一本书。

桶结构示例:

-My Bucket/
    - Books/
        - d32c04f7-bbd3-4331-b53d-2528d783c0ef/
            - anotherDirectory/
                - object.txt
                - etc...
        - d32c04f7-bbd3-4331-b53d-2528d783c0ef/
            - ...
        - e10513c2-2464-4d7b-a4b3-2177886325b7/
- etc.

我想要的东西:

默认情况下,拒绝访问所有图书,并允许每个“图书”访问用户(通过将其附加到iam策略或存储桶策略中,这与我的情况最为相关),并且可能存在多个用户的限制根据其«授权»在书目录中读取或写入文件。

我最终得到的结果:

我考虑过使用包含“ Books uuid”的键为用户添加Aws标签,并以该书中用户的状态作为值。 示例(标记键/值):d32c04f7-bbd3-4331-b53d-2528d783c0ef /作者。     我不知道这是否是最相关的解决方案,但是我无法设法创建一种策略,在尝试访问其中的对象之前,先检查与s3对象键(book uuid)匹配的用户键。

您能帮我解决这个问题还是为我的案件提供更相关的方法?如果您在这种情况下需要更高的精度,请随时询问。

预先感谢:)

0 个答案:

没有答案