AWS::WAFv2::WebACL Rule - AWS CloudFormation
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

AWS::WAFv2::WebACL Rule

注意

这是 AWS WAF 的最新版本,名为 AWS WAFV2,于 2019 年 11 月发布。有关信息(包括如何从以前的发行版迁移 AWS WAF 资源),请参阅 AWS WAF 开发人员指南

单个规则,您可以在 WebACL 或 RuleGroup 中使用该规则以指定要允许、阻止或计入的 Web 请求。每个规则包含一个顶级语句(AWS WAF 使用该语句指定匹配的 Web 请求)以及一些参数(控制 AWS WAF 如何处理它们)。

语法

要在 AWS CloudFormation 模板中声明此实体,请使用以下语法:

属性

Action

在 Web 请求与规则的语句匹配时,AWS WAF 应对该请求执行的操作。Web ACL 级别的设置可能会覆盖规则操作设置。

这仅用于其语句不引用规则组的规则。引用规则组的规则语句是 RuleGroupReferenceStatementManagedRuleGroupStatement

您必须设置此 Action 设置或设置规则的 OverrideAction,但不能同时设置:

  • 如果规则语句未引用规则组,则您必须设置此规则操作设置,并且不得设置规则的覆盖操作设置。

  • 如果规则语句引用规则组,则您不能设置此操作设置,因为这些操作已在规则组内的规则上设置。您必须设置规则的覆盖操作设置,以明确指示是否覆盖在规则组中的规则上设置的操作。

必需:条件

类型RuleAction

Update requires: No interruption

Name

规则的友好名称。您在创建 Rule 后无法更改其名称。

必需:是

类型:字符串

最低1

最高128

模式^[\w\-]+$

Update requires: No interruption

OverrideAction

要应用于规则组中的规则的覆盖操作,而不是单个规则操作设置。这仅用于其语句引用规则组的规则。引用规则组的规则语句是 RuleGroupReferenceStatementManagedRuleGroupStatement

将覆盖操作设置为“无”可使规则组规则操作保持有效。将其设置为“计数”可仅对匹配项计数,无论规则操作设置如何。

您必须设置此 OverrideAction 设置或 Action 设置,但不能同时设置:

  • 如果规则语句引用规则组,则您必须设置此覆盖操作设置,并且不得设置规则的操作设置。

  • 如果规则语句未引用规则组,则您必须设置规则操作设置,并且不得设置规则的覆盖操作设置。

必需:条件

类型OverrideAction

Update requires: No interruption

Priority

如果您在 WebACL 中定义多个 Rule,AWS WAF 将根据 Priority 值按顺序针对 Rules 评估每个请求。AWS WAF 先处理低优先级的规则。优先级不需要是连续的,但它们必须都是不同的。

必需:是

类型:整数

最低0

Update requires: No interruption

Statement

规则的 AWS WAF 处理语句,例如 ByteMatchStatement 或 SizeConstraintStatement。

必需:是

类型StatementOne

Update requires: No interruption

VisibilityConfig

定义并启用 Amazon CloudWatch 指标和 Web 请求采样。

必需:是

类型VisibilityConfig

Update requires: No interruption