AWS::WAFv2::RegexPatternSet - Amazon CloudFormation
Services or capabilities described in Amazon Web Services documentation might vary by Region. To see the differences applicable to the China Regions, see Getting Started with Amazon Web Services in China (PDF).

AWS::WAFv2::RegexPatternSet

Note

This is the latest version of Amazon WAF , named Amazon WAFV2, released in November, 2019. For information, including how to migrate your Amazon WAF resources from the prior release, see the Amazon WAF developer guide.

Use an AWS::WAFv2::RegexPatternSet to have Amazon WAF inspect a web request component for a specific set of regular expression patterns.

You use a regex pattern set by providing its Amazon Resource Name (ARN) to the rule statement RegexPatternSetReferenceStatement, when you add a rule to a rule group or web ACL.

Syntax

To declare this entity in your Amazon CloudFormation template, use the following syntax:

JSON

{ "Type" : "AWS::WAFv2::RegexPatternSet", "Properties" : { "Description" : String, "Name" : String, "RegularExpressionList" : [ String, ... ], "Scope" : String, "Tags" : [ Tag, ... ] } }

YAML

Type: AWS::WAFv2::RegexPatternSet Properties: Description: String Name: String RegularExpressionList: - String Scope: String Tags: - Tag

Properties

Description

A description of the set that helps with identification.

Required: No

Type: String

Pattern: ^[a-zA-Z0-9=:#@/\-,.][a-zA-Z0-9+=:#@/\-,.\s]+[a-zA-Z0-9+=:#@/\-,.]{1,256}$

Update requires: No interruption

Name

The name of the set. You cannot change the name after you create the set.

Required: No

Type: String

Pattern: ^[0-9A-Za-z_-]{1,128}$

Update requires: Replacement

RegularExpressionList

The regular expression patterns in the set.

Required: Yes

Type: Array of String

Update requires: No interruption

Scope

Specifies whether this is for an Amazon CloudFront distribution or for a regional application. A regional application can be an Application Load Balancer (ALB), an Amazon API Gateway REST API, an Amazon AppSync GraphQL API, an Amazon Cognito user pool, an Amazon App Runner service, or an Amazon Verified Access instance. Valid Values are CLOUDFRONT and REGIONAL.

Note

For CLOUDFRONT, you must create your WAFv2 resources in the US East (N. Virginia) Region, us-east-1.

Required: Yes

Type: String

Allowed values: CLOUDFRONT | REGIONAL

Update requires: Replacement

Tags

Key:value pairs associated with an Amazon resource. The key:value pair can be anything you define. Typically, the tag key represents a category (such as "environment") and the tag value represents a specific value within that category (such as "test," "development," or "production"). You can add up to 50 tags to each Amazon resource.

Note

To modify tags on existing resources, use the Amazon WAF APIs or command line interface. With Amazon CloudFormation, you can only add tags to Amazon WAF resources during resource creation.

Required: No

Type: Array of Tag

Minimum: 1

Update requires: No interruption

Return values

Ref

The Ref for the resource, containing the resource name, physical ID, and scope, formatted as follows: name|id|scope.

For example: my-webacl-name|1234a1a-a1b1-12a1-abcd-a123b123456|REGIONAL.

Fn::GetAtt

The Fn::GetAtt intrinsic function returns a value for a specified attribute of this type. The following are the available attributes and sample return values.

For more information about using the Fn::GetAtt intrinsic function, see Fn::GetAtt.

Arn

The Amazon Resource Name (ARN) of the regex pattern set.

Id

The ID of the regex pattern set.

Examples

Create a regex pattern set

The following shows an example regex pattern set specification.

YAML

ExampleRegexPatternSet: Type: AWS::WAFv2::RegexPatternSet Properties: Name: ExampleRegexPatternSet Scope: REGIONAL Description: This is an example RegexPatternSet RegularExpressionList: - ^foobar$ - ^example$

JSON

"ExampleRegexPatternSet": { "Type": "AWS::WAFv2::RegexPatternSet", "Properties": { "Name": "ExampleRegexPatternSet1", "Scope": "REGIONAL", "Description": "This is an example RegexPatternSet", "RegularExpressionList": [ "^foobar$", "^example$" ] } }