我有一个S3存储桶my-bucket
和该存储桶中的一个对象my-image.jpg
为了在网站上直接从S3中显示这些图片,我已将此存储桶政策放在my-bucket
上:
{
"Version": "2008-10-17",
"Statement": [
{
"Sid": "AllowPublicRead",
"Effect": "Allow",
"Principal": {
"AWS": "*"
},
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::my-bucket/*"
}
]
}
现在,在我的网站上,我可以方便地在我的HTML中执行此操作:
<img width="400" height="400"
src="https://s3.amazonaws.com/my-bucket/my-image.jpg">
但是什么阻止了某个人在某个地方制作了自己的公开my-bucket
,并添加了my-image.jpg
?如何加载正确的图片? S3是否以某种方式处理这个问题?
注意不,这些不是实际的存储桶名称+图像名称。他们就是例子。
答案 0 :(得分:2)
来自http://docs.aws.amazon.com/AmazonS3/latest/gsg/CreatingABucket.html
“您选择的存储桶名称在Amazon S3中的所有现有存储桶名称中必须是唯一的。”
所以亚马逊不会让你首先发生命名冲突。
我认为现在是每个地区,因为地区有自己的域名,但我不确定。