【发布时间】:2014-11-08 13:40:38
【问题描述】:
我们正在开发一个使用 Parse 作为我们的 BAAS 解决方案的移动应用程序,但使用 Amazon S3 来存储我们的媒体文件。我们所有的用户都将媒体文件上传到我们应用程序存储桶内他们自己的个人文件夹中。当用户上传媒体文件时,我们会更新他们在 Parse 中的记录,以便它知道在哪里下载文件。那是容易的部分。
我花了很多时间研究 S3 存储桶的不同策略,并试图掌握确保上传内容安全的正确方法。如果您使用 DynamoDB 或 SimpleDB 完成所有工作,那么这很容易,因为您实际上是在使用 IAM 帐户等调整 ACL。如果您使用 Amazon Cognito,它也很容易,因为身份验证是通过 Google、Facebook 或 Amazon 帐户进行的。就我而言,我使用 Parse 来验证无法直接与亚马逊对话的用户。
我的目标是只有当前登录的 ID #1234567 的 Parse 用户才能访问他们自己的 1234567 文件夹和文件(以及此人授予协作权限的任何其他用户)。这是一个类似于我想要完成的帖子:amazon S3 bucket policy - restricting access by referer BUT not restricting if urls are generated via query string authentication
...但是如何使用当前用户的 ID 号完成此操作?
更好的问题是上面提到的那篇文章是否是最佳实践,还是我应该考虑创建一个 EC2 服务器来处理对这些文件的访问?我应该使用 CloudFront 来提供私有内容吗?还是有另一种方法更适合我想要完成的工作?我在转圈,我的头在旋转。
感谢任何可以帮助我解决问题的人。
【问题讨论】:
-
你有解决这个问题的办法吗?
-
不,我还没有收到这个问题的答案。感谢您的提问。
-
您是否尝试向亚马逊支持寻求帮助?
-
不,因为我认为他们会告诉我只使用他们的 DynamoDB 而不是 Parse,而且他们不能支持另一家公司的产品.....但这只是我的想法...... .