我有一台服务器,它应该向客户端提供临时 AWS 凭证。凭证将使用 HTTPS 传输。
客户端应该能够上传和下载 S3 文件。我的担忧如下:
我有多个用户仅访问他们自己的目录:/Users/someUser/myfile.png
您可以设置策略以一般允许或拒绝 S3,但不能仅授予对特定路径的访问权限。
我该怎么办? HTTPS传输够用吗?
然后是我的第二个问题。
如果我听到“临时凭证”,我心里就有一个密钥,该密钥的有效期为几个小时,然后就会过期。但我不确定 IAM 是否真的是为此而构建的。
我应该为所有用户提供相同的凭据吗?
或者我是否为每个客户端生成一个密钥对?
服务器使用 PHP 运行,客户端使用 Objective-C 运行。
您可以指定对 Amazon S3 中的路径的权限。欲了解更多详细信息,请参阅以下内容:
使用 IAM 策略 http://docs.amazonwebservices.com/AmazonS3/latest/dev/UsingIAMPolicies.html
此外,如果您想创建“临时凭证”,您可以使用 AWS Security Token Service。此服务允许您创建持续 1 - 36 小时的凭据,并且您可以对这些凭据设置策略以限制其访问。有关该服务的更多详细信息,请参阅:
安全令牌服务 API 参考 http://docs.amazonwebservices.com/STS/latest/APIReference/Welcome.html?r=829
最后,有一篇为 AWS 移动软件开发工具包编写的文章做了类似的事情。它有一个服务器向使用 Amazon S3 存储桶的用户颁发临时凭证。它将用户限制在存储桶的“子文件夹”中,并限制他们的操作。您可以在此处阅读此示例:
移动应用程序的凭证管理 http://aws.amazon.com/code/4598681430241367
希望这可以帮助您获取所需的信息。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)