S3存储桶公有权限下及持单个文件链接时的访问权限咨询
Amazon S3 公共访问权限常见问题解答
问题1:若S3存储桶已配置公共访问权限,外部人员是否可查看该桶内的其他文件?
这得看你说的「公共访问权限」具体是怎么配置的,不能一概而论:
- 如果你的桶策略或者ACL(访问控制列表)给所有匿名用户(也就是
"Principal": "*")同时开了s3:ListBucket和s3:GetObject权限,那外部人不仅能直接列出桶里的所有文件列表,还能点开任意文件查看。 - 要是只开了
s3:GetObject但没给s3:ListBucket权限,外部人没法主动浏览桶里的文件目录,但如果他们知道某个文件的完整路径(比如my-public-bucket/docs/report.pdf),就能直接访问这个文件;不知道路径的话,根本找不到其他文件在哪。 - 还有一种情况:如果你的公共访问是针对特定文件夹或者单个文件设置的,那只有被授权的那些资源能被访问,桶里的其他文件还是处于受保护状态,外部人碰不到。
问题2:若S3存储桶已配置公共访问权限,且外部人员持有该桶内某一文件的访问链接,是否可查看桶内其他文件?
同样得看权限配置的细节:
- 如果这个公共访问权限只针对那一个特定文件(比如单独给这个文件的ACL设了公共读),那外部人只能访问这个文件,哪怕他们知道其他文件的名字也打不开,因为其他文件没有公共访问权限。
- 如果你的桶策略是给所有匿名用户开了
s3:GetObject权限(整个桶的文件都允许公共读),那只要外部人知道其他文件的完整路径,就能自己构造出访问链接来查看;但如果没给s3:ListBucket权限,他们没法主动列出桶里的所有文件,只能靠已经知道的路径来访问,没法“逛”整个桶。 - 要是桶的公共访问配置里还包含了
s3:ListBucket权限,那外部人拿到一个文件链接后,甚至可以通过桶的根地址列出所有文件,然后挨个访问其他文件。
内容的提问来源于stack exchange,提问作者soumik paul
相关产品推荐
相关产品推荐

