Amazon S3存储:可以在私有存储桶中列出公共文件夹吗?

时间:2018-06-25 12:01:35

标签: amazon-web-services amazon-s3

我有一个Amazon S3存储桶,所有设置均处于默认模式。当我进入“存储桶权限”标签并查看公共访问权限 / 所有人部分时,所有选项均为空,因此所有内容均为私有。

现在,我创建一个具有非常长的随机sha1-hash的文件夹,我在该文件夹中上传了一些文件和子文件夹,并将整个文件夹公开。是否可以检测(列出)此文件夹?

当我在浏览器中进入存储桶时 https://s3.xxx.amazonaws.com/my-private-bucket 我看到:<Code>AccessDenied</Code>

这看起来不错。但是也许还有另一种方法可以检测我的公用文件夹?

1 个答案:

答案 0 :(得分:1)

如果您的存储桶策略仅授予该文件夹s3:GetObject,则不应公开表明该文件夹存在。但是,随着您的用户的请求遍历Internet到达Amazon S3,各种系统可能会记录对这些对象的访问。您至少应使用HTTPS访问对象。

请参阅:TechnoSophos: Allow only HTTPS on an S3 Bucket

请注意,Security through obscurity - Wikipedia通常被认为是较差的安全性,因为任何知道文件链接的人都可以访问该文件。请勿使用“隐藏文件夹”作为敏感信息的安全保护形式。

仅向获得授权的人授予访问权限的首选方法是,让应用程序对用户身份进行身份验证,然后让其生成Amazon S3 pre-signed URLs,这会授予对Amazon S3中的对象有时间限制的访问权限。