如何解决 Amazon CloudFront 发出的“403 Error - The request could not be satisfied.Request Blocked(403 错误 - 无法满足请求,请求遭阻止)”?

上次更新时间:2023 年 1 月 20 日

Amazon CloudFront 返回错误消息“403 Error - The request could not be satisfied.Request Blocked.(403 错误 - 无法满足请求,请求遭阻止。)”

简短描述

此错误消息“403 Error - The request could not be satisfied.Request Blocked.”是来自客户端的错误。此错误可能由与 CloudFront 分配关联的 AWS WAF 规则 的默认操作引起。以下设置可能会导致 Request Blocked(请求遭阻止)错误:

  • 如果默认操作设置为 Allow(允许),则该请求与将 Action(操作)设置为 Block(阻止)的规则匹配。
  • 如果默认操作设置为 Allow(允许),则该请求与将 Action(操作)设置为 Block(禁止)的规则条件匹配。
    -或者-
  • 如果默认操作设置为 Block(阻止),则该请求与将 Action(操作)设置为 Allow(允许)的规则条件均不匹配。

有关排查其他类型 403 错误的信息,请参阅如何排查来自 CloudFront 的 403 错误?

解决方法

要解决 Request Blocked(请求被阻止)错误,请执行以下操作:

  1. 打开 CloudFront 控制台
  2. 选择要更新的分配 ID。
  3. 选择 General(常规)选项卡。
  4. Settings(设置)项下的 AWS WAF Web ACL 列表中,选择与您的分配关联的 Web 访问控制列表(Web ACL)。
  5. AWS WAF 控制台中,选择 Web ACL
  6. Web ACL 页面上,对于 AWS 区域,选择 Global (CloudFront)
  7. 选择需要审核的 Web ACL。检查是否在 Web ACL 上设置了 AWS WAF 默认操作。
  8. 要解决默认操作为 Allow(允许)时的 Request Blocked(请求遭阻止)错误,请查看请求。请确保它们与 Action(操作)设置为 Block(阻止)的任何 AWS WAF 规则的条件不匹配。
    如果有效的请求与禁止请求的规则条件匹配,则更新规则以允许请求。
  9. 要解决默认操作为 Block(阻止)时的 Request Blocked(请求遭阻止)错误,请查看请求。请确保它们与任何 Action(操作)设置为 Allow(允许)的 AWS WAF 规则条件匹配。
    如果有效的请求与允许请求的任何现有规则匹配,则创建允许请求的规则
注意:要进一步进行问题排查,请使用 AWS WAF 控制台查看与可能导致 Request Blocked(请求遭阻止)错误的规则匹配的请求示例。有关更多信息,请参阅 测试和调整您的 AWS WAF 保护