将 Host 标头转发到源导致 S3 抛出 SignatureDoesNotMatch 错误

jel*_*csc 5 amazon-s3 amazon-web-services amazon-cloudfront

我最近在使用 Amazon CloudFront 时遇到了一个非常奇怪的问题,我不知道为什么。这是我的设置:

  • 在存储桶策略中配置了 OAI s3:GetObject 的 S3 存储桶 (A)
  • 具有 S3 源 (A) 和受信任签名者的 CloudFront 配置为限制查看器访问

到现在为止还挺好。这是一个非常简单直接的设置。现在到了奇怪的部分。

如果我将Host标头转发到源(在本例中为存储桶 A),则 CloudFront 签名 URL 将返回SignatureDoesNotMatch错误。

有谁知道为什么会发生这种情况?提前致谢。