4

我有一台服务器,它应该向客户端提供临时 AWS 凭证。凭据将使用 HTTPS 传输。

客户端应该能够上传和下载 S3 文件。我的担忧如下:

我有多个用户只访问他们自己的目录:/Users/someUser/myfile.png

一般来说,您可以设置策略以允许或拒绝 S3,但不能仅授予对特定路径的访问权限。

我该怎么办?HTTPS传输就够了吗?

然后我的第二个问题。如果我听到“临时凭证”,我会记住一个密钥,它在几个小时内有效,然后过期。但我不确定 IAM 是否真的是为此而构建的。我应该为所有用户提供相同的凭据吗?或者我是否为每个客户端生成一个密钥对?

服务器使用 PHP 运行,客户端使用 Objective-C。

4

1 回答 1

8

您可以在 Amazon S3 中的路径上指定权限。有关更多详细信息,请参阅以下内容:

使用 IAM 策略

此外,如果您想创建“临时凭证”,您可以使用 AWS Security Token Service。此服务允许您创建持续 1 到 36 小时的凭证,您可以对这些凭证设置策略以限制其访问。有关该服务的更多详细信息,请参阅:

安全令牌服务 API 参考

最后,还有一篇为 AWS 移动开发工具包编写的文章,它做了类似的事情。它有一个服务器向使用 Amazon S3 存储桶的用户颁发临时凭证。它将用户限制在存储桶的“子文件夹”中,并限制他们的操作。您可以在此处阅读此示例:

移动应用程序的凭据管理

希望这可以帮助您获得所需的信息。

于 2012-11-02T22:12:51.210 回答