Amazon s3 AWS CloudFront访问控制允许原始和签名Cookie/URL
我被S3+Cloudfront+签名URL的CORS卡住了 我的用例是: 第一个故事(成功):Amazon s3 AWS CloudFront访问控制允许原始和签名Cookie/URL,amazon-s3,amazon-cloudfront,amazon-signed-cookie,Amazon S3,Amazon Cloudfront,Amazon Signed Cookie,我被S3+Cloudfront+签名URL的CORS卡住了 我的用例是: 第一个故事(成功): 我有一个带有Cloudfront的Amazon S3存储桶。可通过DOMAIN1/file链接访问文件 我编写了一个简单的testjs脚本,从DOMAIN1获取文件,并将其放在DOMAIN2/test.html 我能够成功地获取文件CORS很好 第二个案例(也成功): 我通过使用签名Url限制云前端分发 起初,我试图访问域1中的一个文件,但没有签名。访问被拒绝。没关系,因为请求没有签名 我已经创建了一
DOMAIN1/file
链接访问文件DOMAIN2/test.html
DOMAIN2/test.html
test脚本No“Access Control Allow Origin”标题错误
<CORSConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<CORSRule>
<AllowedOrigin>http://*</AllowedOrigin>
<AllowedOrigin>https://*</AllowedOrigin>
<AllowedMethod>GET</AllowedMethod>
<AllowedMethod>HEAD</AllowedMethod>
<MaxAgeSeconds>10</MaxAgeSeconds>
<AllowedHeader>*</AllowedHeader>
</CORSRule>
http://*
https://*
得到
头
10
*
CloudFront/S3/IAM设置中一定有问题。如何修复它?解决方案似乎是设置对S3存储桶的正确访问权限。取而代之的是“Everyone”访问,需要“任何AWS认证用户”或“Cloudfront适当用户”。我转到
Cloudfront发行版->MYPRIVATECLOUDFRONTID->Behaviors
,添加了以下内容:
Path Pattern = path/to/my/file.ext
Forward Headers = Whitelist
并添加到白名单标题:来源
不要忘记取消选中选项限制查看器访问(使用签名URL或
签名Cookies)
-对我来说,它被标记为不限制,即使我已将整个缓存标记为限制
我的下一步是按需自动设置此白名单。如果您可以从失败案例中捕获请求和响应标题,则更容易准确地了解您正在报告的内容。