AWS WAF V2 Rule Group
This page shows how to write Terraform and CloudFormation for AWS WAF V2 Rule Group and write them securely.
aws_wafv2_rule_group (Terraform)
The Rule Group in AWS WAF V2 can be configured in Terraform with the resource name aws_wafv2_rule_group. The following sections describe 4 examples of how to use the resource and its parameters.
Example Usage from GitHub
resource "aws_wafv2_rule_group" "this" {
capacity = var.capacity
name = var.name
scope = var.scope
description = var.description
tags = var.tags
resource "aws_wafv2_rule_group" "example" {
name = "example-rule"
scope = "REGIONAL"
capacity = 2
rule {
resource "aws_wafv2_rule_group" "example" {
name = "complex-example"
description = "An rule group containing all statements"
scope = "REGIONAL"
capacity = 500
resource "aws_wafv2_rule_group" "example" {
capacity = 10
name = "example-rule-group"
scope = "CLOUDFRONT"
rule {
Parameters
-
arnoptional computed - string -
capacityrequired - number -
descriptionoptional - string -
idoptional computed - string -
lock_tokenoptional computed - string -
namerequired - string -
scoperequired - string -
tagsoptional - map from string to string -
ruleset block-
namerequired - string -
priorityrequired - number -
actionlist block -
statementlist block-
and_statementlist block-
statementlist block-
and_statementlist block-
statementlist block-
byte_match_statementlist block-
positional_constraintrequired - string -
search_stringrequired - string -
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
geo_match_statementlist block-
country_codesrequired - list of string -
forwarded_ip_configlist block-
fallback_behaviorrequired - string -
header_namerequired - string
-
-
-
ip_set_reference_statementlist block-
arnrequired - string -
ip_set_forwarded_ip_configlist block-
fallback_behaviorrequired - string -
header_namerequired - string -
positionrequired - string
-
-
-
regex_pattern_set_reference_statementlist block-
arnrequired - string -
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
size_constraint_statementlist block-
comparison_operatorrequired - string -
sizerequired - number -
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
sqli_match_statementlist block-
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
xss_match_statementlist block-
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
-
-
byte_match_statementlist block-
positional_constraintrequired - string -
search_stringrequired - string -
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
geo_match_statementlist block-
country_codesrequired - list of string -
forwarded_ip_configlist block-
fallback_behaviorrequired - string -
header_namerequired - string
-
-
-
ip_set_reference_statementlist block-
arnrequired - string -
ip_set_forwarded_ip_configlist block-
fallback_behaviorrequired - string -
header_namerequired - string -
positionrequired - string
-
-
-
not_statementlist block-
statementlist block-
byte_match_statementlist block-
positional_constraintrequired - string -
search_stringrequired - string -
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
geo_match_statementlist block-
country_codesrequired - list of string -
forwarded_ip_configlist block-
fallback_behaviorrequired - string -
header_namerequired - string
-
-
-
ip_set_reference_statementlist block-
arnrequired - string -
ip_set_forwarded_ip_configlist block-
fallback_behaviorrequired - string -
header_namerequired - string -
positionrequired - string
-
-
-
regex_pattern_set_reference_statementlist block-
arnrequired - string -
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
size_constraint_statementlist block-
comparison_operatorrequired - string -
sizerequired - number -
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
sqli_match_statementlist block-
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
xss_match_statementlist block-
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
-
-
or_statementlist block-
statementlist block-
byte_match_statementlist block-
positional_constraintrequired - string -
search_stringrequired - string -
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
geo_match_statementlist block-
country_codesrequired - list of string -
forwarded_ip_configlist block-
fallback_behaviorrequired - string -
header_namerequired - string
-
-
-
ip_set_reference_statementlist block-
arnrequired - string -
ip_set_forwarded_ip_configlist block-
fallback_behaviorrequired - string -
header_namerequired - string -
positionrequired - string
-
-
-
regex_pattern_set_reference_statementlist block-
arnrequired - string -
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
size_constraint_statementlist block-
comparison_operatorrequired - string -
sizerequired - number -
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
sqli_match_statementlist block-
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
xss_match_statementlist block-
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
-
-
regex_pattern_set_reference_statementlist block-
arnrequired - string -
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
size_constraint_statementlist block-
comparison_operatorrequired - string -
sizerequired - number -
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
sqli_match_statementlist block-
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
xss_match_statementlist block-
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
-
-
byte_match_statementlist block-
positional_constraintrequired - string -
search_stringrequired - string -
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
geo_match_statementlist block-
country_codesrequired - list of string -
forwarded_ip_configlist block-
fallback_behaviorrequired - string -
header_namerequired - string
-
-
-
ip_set_reference_statementlist block-
arnrequired - string -
ip_set_forwarded_ip_configlist block-
fallback_behaviorrequired - string -
header_namerequired - string -
positionrequired - string
-
-
-
not_statementlist block-
statementlist block-
and_statementlist block-
statementlist block-
byte_match_statementlist block-
positional_constraintrequired - string -
search_stringrequired - string -
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
geo_match_statementlist block-
country_codesrequired - list of string -
forwarded_ip_configlist block-
fallback_behaviorrequired - string -
header_namerequired - string
-
-
-
ip_set_reference_statementlist block-
arnrequired - string -
ip_set_forwarded_ip_configlist block-
fallback_behaviorrequired - string -
header_namerequired - string -
positionrequired - string
-
-
-
regex_pattern_set_reference_statementlist block-
arnrequired - string -
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
size_constraint_statementlist block-
comparison_operatorrequired - string -
sizerequired - number -
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
sqli_match_statementlist block-
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
xss_match_statementlist block-
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
-
-
byte_match_statementlist block-
positional_constraintrequired - string -
search_stringrequired - string -
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
geo_match_statementlist block-
country_codesrequired - list of string -
forwarded_ip_configlist block-
fallback_behaviorrequired - string -
header_namerequired - string
-
-
-
ip_set_reference_statementlist block-
arnrequired - string -
ip_set_forwarded_ip_configlist block-
fallback_behaviorrequired - string -
header_namerequired - string -
positionrequired - string
-
-
-
not_statementlist block-
statementlist block-
byte_match_statementlist block-
positional_constraintrequired - string -
search_stringrequired - string -
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
geo_match_statementlist block-
country_codesrequired - list of string -
forwarded_ip_configlist block-
fallback_behaviorrequired - string -
header_namerequired - string
-
-
-
ip_set_reference_statementlist block-
arnrequired - string -
ip_set_forwarded_ip_configlist block-
fallback_behaviorrequired - string -
header_namerequired - string -
positionrequired - string
-
-
-
regex_pattern_set_reference_statementlist block-
arnrequired - string -
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
size_constraint_statementlist block-
comparison_operatorrequired - string -
sizerequired - number -
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
sqli_match_statementlist block-
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
xss_match_statementlist block-
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
-
-
or_statementlist block-
statementlist block-
byte_match_statementlist block-
positional_constraintrequired - string -
search_stringrequired - string -
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
geo_match_statementlist block-
country_codesrequired - list of string -
forwarded_ip_configlist block-
fallback_behaviorrequired - string -
header_namerequired - string
-
-
-
ip_set_reference_statementlist block-
arnrequired - string -
ip_set_forwarded_ip_configlist block-
fallback_behaviorrequired - string -
header_namerequired - string -
positionrequired - string
-
-
-
regex_pattern_set_reference_statementlist block-
arnrequired - string -
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
size_constraint_statementlist block-
comparison_operatorrequired - string -
sizerequired - number -
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
sqli_match_statementlist block-
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
xss_match_statementlist block-
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
-
-
regex_pattern_set_reference_statementlist block-
arnrequired - string -
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
size_constraint_statementlist block-
comparison_operatorrequired - string -
sizerequired - number -
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
sqli_match_statementlist block-
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
xss_match_statementlist block-
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
-
-
or_statementlist block-
statementlist block-
and_statementlist block-
statementlist block-
byte_match_statementlist block-
positional_constraintrequired - string -
search_stringrequired - string -
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
geo_match_statementlist block-
country_codesrequired - list of string -
forwarded_ip_configlist block-
fallback_behaviorrequired - string -
header_namerequired - string
-
-
-
ip_set_reference_statementlist block-
arnrequired - string -
ip_set_forwarded_ip_configlist block-
fallback_behaviorrequired - string -
header_namerequired - string -
positionrequired - string
-
-
-
regex_pattern_set_reference_statementlist block-
arnrequired - string -
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
size_constraint_statementlist block-
comparison_operatorrequired - string -
sizerequired - number -
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
sqli_match_statementlist block-
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
xss_match_statementlist block-
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
-
-
byte_match_statementlist block-
positional_constraintrequired - string -
search_stringrequired - string -
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
geo_match_statementlist block-
country_codesrequired - list of string -
forwarded_ip_configlist block-
fallback_behaviorrequired - string -
header_namerequired - string
-
-
-
ip_set_reference_statementlist block-
arnrequired - string -
ip_set_forwarded_ip_configlist block-
fallback_behaviorrequired - string -
header_namerequired - string -
positionrequired - string
-
-
-
not_statementlist block-
statementlist block-
byte_match_statementlist block-
positional_constraintrequired - string -
search_stringrequired - string -
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
geo_match_statementlist block-
country_codesrequired - list of string -
forwarded_ip_configlist block-
fallback_behaviorrequired - string -
header_namerequired - string
-
-
-
ip_set_reference_statementlist block-
arnrequired - string -
ip_set_forwarded_ip_configlist block-
fallback_behaviorrequired - string -
header_namerequired - string -
positionrequired - string
-
-
-
regex_pattern_set_reference_statementlist block-
arnrequired - string -
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
size_constraint_statementlist block-
comparison_operatorrequired - string -
sizerequired - number -
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
sqli_match_statementlist block-
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
xss_match_statementlist block-
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
-
-
or_statementlist block-
statementlist block-
byte_match_statementlist block-
positional_constraintrequired - string -
search_stringrequired - string -
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
geo_match_statementlist block-
country_codesrequired - list of string -
forwarded_ip_configlist block-
fallback_behaviorrequired - string -
header_namerequired - string
-
-
-
ip_set_reference_statementlist block-
arnrequired - string -
ip_set_forwarded_ip_configlist block-
fallback_behaviorrequired - string -
header_namerequired - string -
positionrequired - string
-
-
-
regex_pattern_set_reference_statementlist block-
arnrequired - string -
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
size_constraint_statementlist block-
comparison_operatorrequired - string -
sizerequired - number -
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
sqli_match_statementlist block-
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
xss_match_statementlist block-
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
-
-
regex_pattern_set_reference_statementlist block-
arnrequired - string -
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
size_constraint_statementlist block-
comparison_operatorrequired - string -
sizerequired - number -
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
sqli_match_statementlist block-
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
xss_match_statementlist block-
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
-
-
regex_pattern_set_reference_statementlist block-
arnrequired - string -
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
size_constraint_statementlist block-
comparison_operatorrequired - string -
sizerequired - number -
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
sqli_match_statementlist block-
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
xss_match_statementlist block-
field_to_matchlist block-
all_query_argumentslist block -
bodylist block -
methodlist block -
query_stringlist block -
single_headerlist block-
namerequired - string
-
-
single_query_argumentlist block-
namerequired - string
-
-
uri_pathlist block
-
-
text_transformationset block
-
-
-
visibility_configlist block-
cloudwatch_metrics_enabledrequired - bool -
metric_namerequired - string -
sampled_requests_enabledrequired - bool
-
-
-
visibility_configlist block-
cloudwatch_metrics_enabledrequired - bool -
metric_namerequired - string -
sampled_requests_enabledrequired - bool
-
Explanation in Terraform Registry
Creates a WAFv2 Rule Group resource.
AWS::WAFv2::RuleGroup (CloudFormation)
The RuleGroup in WAFv2 can be configured in CloudFormation with the resource name AWS::WAFv2::RuleGroup. The following sections describe 8 examples of how to use the resource and its parameters.
Example Usage from GitHub
Type: AWS::WAFv2::RuleGroup
Properties:
VisibilityConfig:
CloudWatchMetricsEnabled: True
SampledRequestsEnabled: True
MetricName: PracticeRuleGroup
Type: AWS::WAFv2::RuleGroup
Properties:
Name: Name
Scope: REGIONAL
Capacity: 1
VisibilityConfig:
Type: 'AWS::WAFv2::RuleGroup'
Properties:
Name: YourCustomRuleGroup
Scope: CLOUDFRONT
Description: YourCustomRuleGroup
VisibilityConfig:
# Type: AWS::WAFv2::RuleGroup
# Properties:
# Capacity: 1
# Rules:
# - Action:
# Block: {}
Type: AWS::WAFv2::RuleGroup
Properties:
Capacity: 2
Description: !Sub "${Environment} Whitelist CloudFront IP"
Name: !Sub "WhitelistCloudFrontIP${Environment}"
Rules:
"AWS::WAFv2::RuleGroup.FieldToMatch": {
"Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-fieldtomatch.html",
"Properties": {
"SingleHeader": {
"Documentation": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-fieldtomatch.html#cfn-wafv2-rulegroup-fieldtomatch-singleheader",
"UpdateType": "Mutable",
"AWS::WAFv2::RuleGroup": {
"Type": "AWS::WAFv2::RuleGroup",
"Properties": {}
},
"AWS::ElasticBeanstalk::Application": {
"Type": "AWS::ElasticBeanstalk::Application",
"resourceType": "AWS::WAFv2::RuleGroup",
"filePath": null
},
{
"resourceType": "AWS::WAFv2::WebACL",
"filePath": null
Parameters
-
Capacityrequired - Integer -
Descriptionoptional - String -
Nameoptional - String -
Scoperequired - String -
Rulesoptional - List of Rule -
VisibilityConfigrequired - VisibilityConfig -
Tagsoptional - List of Tag -
CustomResponseBodiesoptional - Map of CustomResponseBody
Explanation in CloudFormation Registry
Note This is the latest version of AWS WAF, named AWS WAFV2, released in November, 2019. For information, including how to migrate your AWS WAF resources from the prior release, see the AWS WAF Developer Guide. Use an AWS::WAFv2::RuleGroup to define a collection of rules for inspecting and controlling web requests. You use a rule group in an AWS::WAFv2::WebACL by providing its Amazon Resource Name (ARN) to the rule statement
RuleGroupReferenceStatement, when you add rules to the web ACL. When you create a rule group, you define an immutable capacity limit. If you update a rule group, you must stay within the capacity. This allows others to reuse the rule group with confidence in its capacity requirements.
Frequently asked questions
What is AWS WAF V2 Rule Group?
AWS WAF V2 Rule Group is a resource for WAF V2 of Amazon Web Service. Settings can be wrote in Terraform and CloudFormation.
Where can I find the example code for the AWS WAF V2 Rule Group?
For Terraform, the pijain/terraform, JamesWoolfenden/terraform-aws-waf2-regional and peytoncasper/tf-cdk-examples source code examples are useful. See the Terraform Example section for further details.
For CloudFormation, the wak/practice-cfn, PatMyron/cloud and robertcurcio/wafv2 source code examples are useful. See the CloudFormation Example section for further details.