You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -307,12 +425,15 @@ One of the following action blocks must be specified:
307
425
308
426
Exactly one of the following statement blocks must be specified:
309
427
428
+
*`and_statement` - (Optional) Logical AND statement that combines multiple statements. See [And Statement](#and-statement) below.
310
429
*`asn_match_statement` - (Optional) Match requests based on Autonomous System Number (ASN). See [ASN Match Statement](#asn-match-statement) below.
311
430
*`byte_match_statement` - (Optional) Match requests based on byte patterns. See [Byte Match Statement](#byte-match-statement) below.
312
431
*`geo_match_statement` - (Optional) Match requests by geographic location. See [Geo Match Statement](#geo-match-statement) below.
313
432
*`ip_set_reference_statement` - (Optional) Reference to an IP set. See [IP Set Reference Statement](#ip-set-reference-statement) below.
314
433
*`label_match_statement` - (Optional) Match requests based on labels. See [Label Match Statement](#label-match-statement) below.
315
434
*`managed_rule_group_statement` - (Optional) Reference to a managed rule group. See [Managed Rule Group Statement](#managed-rule-group-statement) below.
435
+
*`not_statement` - (Optional) Logical NOT statement that negates a single statement. See [Not Statement](#not-statement) below.
436
+
*`or_statement` - (Optional) Logical OR statement that combines multiple statements. See [Or Statement](#or-statement) below.
316
437
*`rate_based_statement` - (Optional) Rate-based rule to track request rates. See [Rate Based Statement](#rate-based-statement) below.
317
438
*`regex_match_statement` - (Optional) Match requests using regex patterns. See [Regex Match Statement](#regex-match-statement) below.
318
439
*`regex_pattern_set_reference_statement` - (Optional) Reference to a regex pattern set. See [Regex Pattern Set Reference Statement](#regex-pattern-set-reference-statement) below.
@@ -321,6 +442,26 @@ Exactly one of the following statement blocks must be specified:
321
442
*`sqli_match_statement` - (Optional) Match requests that appear to contain SQL injection attacks. See [SQL Injection Match Statement](#sql-injection-match-statement) below.
322
443
*`xss_match_statement` - (Optional) Match requests that appear to contain cross-site scripting attacks. See [Cross-Site Scripting Match Statement](#cross-site-scripting-match-statement) below.
323
444
445
+
~> **NOTE:** Logical statements (`and_statement`, `not_statement`, `or_statement`) can be nested up to 3 levels deep. This matches the nesting limit of the `aws_wafv2_web_acl` resource.
446
+
447
+
#### And Statement
448
+
449
+
Combines multiple statements using logical AND. All nested statements must match for the AND statement to match.
450
+
451
+
*`statement` - (Required) List of statements to combine. At least one statement is required. Each nested statement supports the same statement types listed above.
452
+
453
+
#### Not Statement
454
+
455
+
Negates a single statement. The NOT statement matches when the nested statement does not match.
456
+
457
+
*`statement` - (Required) Single statement to negate. Exactly one statement must be specified.
458
+
459
+
#### Or Statement
460
+
461
+
Combines multiple statements using logical OR. At least one nested statement must match for the OR statement to match.
462
+
463
+
*`statement` - (Required) List of statements to combine. At least one statement is required. Each nested statement supports the same statement types listed above.
464
+
324
465
#### ASN Match Statement
325
466
326
467
*`asn_list` - (Required) List of Autonomous System Numbers (ASNs) to match against. ASNs are unique identifiers assigned to large internet networks managed by organizations such as internet service providers, enterprises, universities, or government agencies.
@@ -436,10 +577,6 @@ One of the following override action blocks must be specified when using managed
436
577
*`metric_name` - (Optional) Name of the CloudWatch metric. Defaults to the rule name.
437
578
*`sampled_requests_enabled` - (Optional) Whether to store sampled requests. Defaults to `true`.
438
579
439
-
## Attribute Reference
440
-
441
-
This resource exports no additional attributes.
442
-
443
580
### Field to Match
444
581
445
582
Exactly one of the following field to match blocks must be specified:
@@ -521,6 +658,10 @@ Exactly one of the following custom key blocks must be specified:
521
658
522
659
*`name` - (Required) Name of the rule to exclude from the rule group.
523
660
661
+
## Attribute Reference
662
+
663
+
This resource exports no additional attributes.
664
+
524
665
## Import
525
666
526
667
In Terraform v1.12.0 and later, the [`import` block](https://developer.hashicorp.com/terraform/language/import) can be used with the `identity` attribute. For example:
0 commit comments