代码之家  ›  专栏  ›  技术社区  ›  John Lippson

如何在AmazonS3上管理不同的用户文件?

  •  0
  • John Lippson  · 技术社区  · 6 年前

    假设我正在构建一个文件上传服务,只希望User1在请求时看到User1文件,User2看到User2文件,等等。

    我可以上传文件,但我只想允许登录用户访问他/她的文件。我是在网站上创建自定义IAM用户的同时在AWS上创建自定义IAM用户,还是使用预先签名的URL?

    不太清楚这是怎么回事。

    2 回复  |  直到 6 年前
        1
  •  3
  •   Mark B    6 年前

    我不会让用户直接访问AWS S3 API,因此我不会为您的每个用户创建IAM用户帐户。我建议将每个用户的文件保存在用户ID的前缀下,只是为了便于清理旧用户、确定每个用户使用的空间等。

    为了让用户能够访问他们的文件,我绝对建议在用户需要上传或下载文件时,在应用程序中生成预先签名的URL。

        2
  •  1
  •   Messa    6 年前

    您需要的唯一IAM用户就是您的应用程序。您不会将AWS/IAM访问密钥提供给任何人。

    当用户想要下载文件时,您会给他们预先指定的S3URL。或者S3文件可以公开读取,如果您的用例允许的话,您只需给它们URL即可。