我在S3中有一个私有存储桶,并且只允许访问包含从CDN(而不是CloudFront)发送的特定(秘密)标头的请求,因为当然很容易使用自己的id )。
这意味着编写一个存储桶策略以允许那些秘密标头请求。
我一直在做一些研究(http://docs.aws.amazon.com/AmazonS3/latest/dev/example-bucket-policies.html),我可以看到你可以测试请求的其他属性,比如 aws:Referer 来对参考进行比较和 aws:SourceIp 在源IP上进行比较 - 但我如何在自定义标题上进行比较,例如" X-我的秘密报头"
存储桶策略是否支持测试标头值?如果是这样,怎么样?
答案 0 :(得分:0)
AWS建议使用“ Referer”标头存储令牌,然后使用AWS Bucket Policy将请求限制为匹配令牌的aws:Referer
标头。请注意,令牌不是实际的引荐来源网址,而是您要使用的任何秘密。
您需要确保从CDN到S3的请求是通过HTTPS进行的,以便对秘密令牌进行加密。
AWS文章How do I use CloudFront to serve a static website hosted on Amazon S3?下的“使用网站终端节点作为源,访问受Referer标头限制”一节中对此进行了描述,假设您可以将CDN中的“ Referer”标头设置为源,则应应用相同的概念。