所有Flash简报请求都来自Alexa设备(可能通过亚马逊服务),所以应该有一种方法来识别和允许这些,而不会使S3存储桶完全公开。
这很可能是使用Conditions或Principals实现的,但我们必须知道请求的详细信息。
有没有人实现这个目标? 要么 当Flash简报技能试图检索JSON(或RSS)文件时,是否有人有样本请求?
以下示例代码允许进行Flash简报,但会使存储桶完全公开,允许任何人耗尽资源:
{
"Version": "2008-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::numbers:role/my-role-to-update"
},
"Action": [
"s3:PutObject",
"s3:PutObjectAcl",
"s3:GetObject",
"s3:GetObjectAcl"
],
"Resource": "arn:aws:s3:::my-bucket"
},
{
"Effect": "Allow",
"Principal": {
"AWS": "*"
},
"Action": [
"s3:GetObject",
"s3:GetObjectAcl"
],
"Resource": "arn:aws:s3:::my-bucket"
}
]
}
答案 0 :(得分:0)
我不熟悉专门提供Flash简报,但这听起来像是使用Amazon S3 pre-signed URLs的机会。
基本上,对象是私有的。然后,当应用程序希望提供对Amazon S3对象的临时访问时,它可以生成有时间限制的预签名URL 。然后,您的应用程序可以提供此URL,该URL将在到期之前正常工作。此后,它不会返回对象。