授权用户的S3存储桶访问

时间:2017-08-01 03:55:01

标签: php node.js amazon-s3 aws-sdk

S3存储桶我想保存图像或视频等对象,并希望它受到保护,只能由授权用户访问我应该做什么。一种方法是在特定时间后使用令牌将URL过期一段时间。还有其他方法可以做到这一点。

2 个答案:

答案 0 :(得分:1)

默认情况下,Amazon S3中的对象是私有的。

如果您只想授予授权用户访问特定文件的权限,您可以选择以下几种方法:

  • 使用AWS凭据或
  • 使用预先签名的网址

如果您希望应用程序能够访问这些对象,您可以将 AWS凭据提供给您的应用程序。这可以是 IAM用户(应用程序也可以是用户),或者通过应用程序假定的 IAM角色(例如,分配然后,EC2实例和应用程序的角色将自动提供凭据。然后,您将授予权限到IAM用户/角色以访问特定存储桶或存储桶中的路径。

或者,如果您希望授予对特定对象(例如用户照片)的选择性访问权限,则可以使用预先签名的网址。这些是有时间限制的凭据,可提供对Amazon S3对象的访问。应用程序可以生成带有几行代码的预签名网址。然后可以将URL插入到网页中(例如,在<img>标签中)以提供对私有对象的临时访问。当时间段到期时,网址将不再有效。

答案 1 :(得分:1)

这是一个解决方案的示例,它允许您的系统在内部访问AWS S3对象的内容,而无需为对象分配访问令牌。

{{1}}