如何配置 CloudFront 以将授权标头转发至源?

上次更新日期:2020 年 11 月 20 日

我的 Amazon CloudFront 分发的源要求请求中包含授权标头。因此,我的分发必须将授权标头转发至源。

简短描述 选择以下方法中的一种,将您的分发配置为将授权标头转发到源:

创建缓存策略。然后,将缓存策略与必须转发授权标头的缓存行为相关联。
注意:您不能使用源请求策略转发授权标头。标头必须是缓存密钥的一部分,以防止缓存满足未经授权的请求。如果您尝试创建转发授权标头的源请求策略,CloudFront 将返回 HTTP 400 错误。 使用原有缓存设置编辑现有的缓存行为。

重要提示:对于 Amazon Simple Storage Service (Amazon S3) 源,不支持基于授权标头的缓存。有关更多信息,请参阅选择用作缓存基础的标头。

解决方法 创建缓存策略
    按照以下步骤使用 CloudFront 控制台创建缓存策略。 在 Cache key contents(缓存密钥内容)下的 Headers(标头)中,选择 Whitelist(白名单)。从标头列表中选择 Authorization(授权)。然后,选择 Add header(添加标头)。 根据要将策略附加到的行为的要求,完成缓存策略的所有其他设置。 创建缓存策略和源请求策略后,请按照以下步骤将策略附加到 CloudFront 分发的相关行为。

使用原有缓存设置编辑现有的缓存行为
    打开 CloudFront 控制台,然后选择您的分发。 选择 Behaviors(行为)选项卡,然后选择要用于转发授权标头的路径。 选择 Edit(编辑)。 对于 Cache Based on Selected Request Headers(基于选择的请求标头进行缓存),选择 Whitelist(白名单)。 在 Whitelist Headers(白名单标头)下,从左侧的列中选择 Authorization (授权),然后选择 Add(添加)。 选择 Yes, Edit(是,请编辑)
    </ol