AWS WAF 中的标签工作方式 - AWS WAF、AWS Firewall Manager 和 AWS Shield Advanced

AWS WAF 中的标签工作方式

本节介绍了 AWS WAF 标签的工作方式。

当规则与 Web 请求匹配时,如果该规则定义了标签,则 AWS WAF 会在规则评估结束时将标签添加到请求中。在 Web ACL 中的匹配规则之后评估的规则可能与规则添加的标签进行匹配。

谁在请求中添加标签

评估请求的 Web ACL 组件可以为请求添加标签。

  • 任何不是规则组参考语句的规则都可以为匹配的 Web 请求添加标签。标签条件是规则定义的一部分,当 Web 请求与规则匹配时,AWS WAF 会将规则的标签添加到请求中。有关信息,请参阅添加标签的 AWS WAF 规则

  • 地理匹配规则语句会为其检查的任何请求添加国家和区域标签,无论该语句是否产生匹配。有关信息,请参阅地理匹配规则语句

  • AWS WAF 的 AWS 托管规则都会为他们检查的请求添加标签。它们根据规则组中的规则匹配添加一些标签,并根据托管规则组使用的 AWS 流程添加一些标签,例如使用智能威胁缓解规则组时添加的令牌标签。有关每个托管规则组添加的标签的信息,请参阅 AWS 托管规则的规则组列表

AWS WAF 如何管理标签

AWS WAF 在规则对请求的检查结束时,将规则的标签添加到请求中。标记是规则匹配活动的一部分,与操作类似。

Web ACL 评估结束后,标签不会保留在 Web 请求中。为了使其他规则与您的规则添加的标签相匹配,您的规则操作不得终止 Web ACL 对 Web 请求的评估。规则操作必须设置为 Count、CAPTCHA 或 Challenge。当 Web ACL 评估未终止时,Web ACL 中的后续规则可以根据请求运行其标签匹配条件。有关规则操作的更多信息,请参阅 在 AWS WAF 中使用规则操作

在 Web ACL 评估期间访问标签

添加后,只要 AWS WAF 根据 Web ACL 评估请求,标签就会在请求上保持可用。Web ACL 中的任何规则都可以访问已在同一 Web ACL 中运行的规则所添加的标签。这包括直接在 Web ACL 中定义的规则和在 Web ACL 中使用的规则组中定义的规则。

  • 您可以使用标签匹配语句与规则的请求检查条件中的标签进行匹配。您可以与请求中附加的任何标签进行匹配。有关语句的详细信息,请参阅 标签匹配规则语句

  • 地理匹配语句会添加带或不带匹配项的标签,但只有在该语句的包含 Web ACL 规则完成请求评估后,这些标签才可用。

    • 您不能使用单个规则(例如逻辑 AND 语句)对地理标签运行地理匹配语句和标签匹配语句。您必须将标签匹配语句放在单独的规则中,该规则在包含地理匹配语句的规则之后运行。

    • 如果您在基于速率的规则语句或托管规则组参考语句中使用地理匹配语句作为范围缩小语句,则该地理匹配语句添加的标签无法由包含规则的语句进行检查。如果您需要在基于速率的规则语句或规则组中检查地理标记,则必须在事先运行的单独规则中运行地理匹配语句。

在 Web ACL 评估之外访问标签信息

Web ACL 评估结束后,标签不会保留在 Web 请求中,而是 AWS WAF 将标签信息记录在日志和指标中。

  • AWS WAF 存储任何单个请求中前 100 个标签的 Amazon CloudWatch 指标。有关访问标签指标的信息,请参阅 使用 Amazon CloudWatch 监控标签指标和维度

  • AWS WAF 在 AWS WAF 控制台的 Web ACL 流量概述控制面板中汇总 CloudWatch 标签指标。您可以在任何 Web ACL 页面上访问控制面板。有关更多信息,请参阅 Web ACL 流量概述控制面板

  • AWS WAF 在日志中记录请求中前 100 个标签的标签。您可以使用标签和规则操作来筛选 AWS WAF 记录的日志。有关信息,请参阅记录 AWS WAF Web ACL 流量

您的 Web ACL 评估可以将 100 多个标签应用于 Web 请求并与 100 多个标签进行匹配,但 AWS WAF 只会在日志和指标中记录前 100 个标签。