AWS Native is in preview. AWS Classic is fully supported.
aws-native.wafv2.getRuleGroup
Explore with Pulumi AI
AWS Native is in preview. AWS Classic is fully supported.
Contains the Rules that identify the requests that you want to allow, block, or count. In a RuleGroup, you also specify a default action (ALLOW or BLOCK), and the action for each Rule that you add to a RuleGroup, for example, block requests from specified IP addresses or block requests from specified referrers. You also associate the RuleGroup with a CloudFront distribution to identify the requests that you want AWS WAF to filter. If you add more than one Rule to a RuleGroup, a request needs to match only one of the specifications to be allowed, blocked, or counted.
Using getRuleGroup
Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.
function getRuleGroup(args: GetRuleGroupArgs, opts?: InvokeOptions): Promise<GetRuleGroupResult>
function getRuleGroupOutput(args: GetRuleGroupOutputArgs, opts?: InvokeOptions): Output<GetRuleGroupResult>
def get_rule_group(id: Optional[str] = None,
name: Optional[str] = None,
scope: Optional[RuleGroupScope] = None,
opts: Optional[InvokeOptions] = None) -> GetRuleGroupResult
def get_rule_group_output(id: Optional[pulumi.Input[str]] = None,
name: Optional[pulumi.Input[str]] = None,
scope: Optional[pulumi.Input[RuleGroupScope]] = None,
opts: Optional[InvokeOptions] = None) -> Output[GetRuleGroupResult]
func LookupRuleGroup(ctx *Context, args *LookupRuleGroupArgs, opts ...InvokeOption) (*LookupRuleGroupResult, error)
func LookupRuleGroupOutput(ctx *Context, args *LookupRuleGroupOutputArgs, opts ...InvokeOption) LookupRuleGroupResultOutput
> Note: This function is named LookupRuleGroup
in the Go SDK.
public static class GetRuleGroup
{
public static Task<GetRuleGroupResult> InvokeAsync(GetRuleGroupArgs args, InvokeOptions? opts = null)
public static Output<GetRuleGroupResult> Invoke(GetRuleGroupInvokeArgs args, InvokeOptions? opts = null)
}
public static CompletableFuture<GetRuleGroupResult> getRuleGroup(GetRuleGroupArgs args, InvokeOptions options)
// Output-based functions aren't available in Java yet
fn::invoke:
function: aws-native:wafv2:getRuleGroup
arguments:
# arguments dictionary
The following arguments are supported:
- Id string
- The ID of the rule group.
- Name string
- The name of the rule group. You cannot change the name of a rule group after you create it.
- Scope
Pulumi.
Aws Native. Wa Fv2. Rule Group 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 AWS AppSync GraphQL API, an Amazon Cognito user pool, an AWS App Runner service, or an AWS Verified Access instance. Valid Values are
CLOUDFRONT
andREGIONAL
.For
CLOUDFRONT
, you must create your WAFv2 resources in the US East (N. Virginia) Region,us-east-1
.
- Id string
- The ID of the rule group.
- Name string
- The name of the rule group. You cannot change the name of a rule group after you create it.
- Scope
Rule
Group 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 AWS AppSync GraphQL API, an Amazon Cognito user pool, an AWS App Runner service, or an AWS Verified Access instance. Valid Values are
CLOUDFRONT
andREGIONAL
.For
CLOUDFRONT
, you must create your WAFv2 resources in the US East (N. Virginia) Region,us-east-1
.
- id String
- The ID of the rule group.
- name String
- The name of the rule group. You cannot change the name of a rule group after you create it.
- scope
Rule
Group 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 AWS AppSync GraphQL API, an Amazon Cognito user pool, an AWS App Runner service, or an AWS Verified Access instance. Valid Values are
CLOUDFRONT
andREGIONAL
.For
CLOUDFRONT
, you must create your WAFv2 resources in the US East (N. Virginia) Region,us-east-1
.
- id string
- The ID of the rule group.
- name string
- The name of the rule group. You cannot change the name of a rule group after you create it.
- scope
Rule
Group 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 AWS AppSync GraphQL API, an Amazon Cognito user pool, an AWS App Runner service, or an AWS Verified Access instance. Valid Values are
CLOUDFRONT
andREGIONAL
.For
CLOUDFRONT
, you must create your WAFv2 resources in the US East (N. Virginia) Region,us-east-1
.
- id str
- The ID of the rule group.
- name str
- The name of the rule group. You cannot change the name of a rule group after you create it.
- scope
Rule
Group 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 AWS AppSync GraphQL API, an Amazon Cognito user pool, an AWS App Runner service, or an AWS Verified Access instance. Valid Values are
CLOUDFRONT
andREGIONAL
.For
CLOUDFRONT
, you must create your WAFv2 resources in the US East (N. Virginia) Region,us-east-1
.
- id String
- The ID of the rule group.
- name String
- The name of the rule group. You cannot change the name of a rule group after you create it.
- scope "CLOUDFRONT" | "REGIONAL"
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 AWS AppSync GraphQL API, an Amazon Cognito user pool, an AWS App Runner service, or an AWS Verified Access instance. Valid Values are
CLOUDFRONT
andREGIONAL
.For
CLOUDFRONT
, you must create your WAFv2 resources in the US East (N. Virginia) Region,us-east-1
.
getRuleGroup Result
The following output properties are available:
- Arn string
- The Amazon Resource Name (ARN) of the rule group.
- Available
Labels List<Pulumi.Aws Native. Wa Fv2. Outputs. Rule Group Label Summary> - Collection of Available Labels.
- Capacity int
The web ACL capacity units (WCUs) required for this rule group.
When you create your own rule group, you define this, and you cannot change it after creation. When you add or modify the rules in a rule group, AWS WAF enforces this limit.
AWS WAF uses WCUs to calculate and control the operating resources that are used to run your rules, rule groups, and web ACLs. AWS WAF calculates capacity differently for each rule type, to reflect the relative cost of each rule. Simple rules that cost little to run use fewer WCUs than more complex rules that use more processing power. Rule group capacity is fixed at creation, which helps users plan their web ACL WCU usage when they use a rule group. The WCU limit for web ACLs is 1,500.
- Consumed
Labels List<Pulumi.Aws Native. Wa Fv2. Outputs. Rule Group Label Summary> - Collection of Consumed Labels.
- Custom
Response Dictionary<string, Pulumi.Bodies Aws Native. Wa Fv2. Outputs. Rule Group Custom Response Body> A map of custom response keys and content bodies. When you create a rule with a block action, you can send a custom response to the web request. You define these for the rule group, and then use them in the rules that you define in the rule group.
For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the AWS WAF Developer Guide .
For information about the limits on count and size for custom request and response settings, see AWS WAF quotas in the AWS WAF Developer Guide .
- Description string
- A description of the rule group that helps with identification.
- Id string
- The ID of the rule group.
- Label
Namespace string The label namespace prefix for this rule group. All labels added by rules in this rule group have this prefix.
The syntax for the label namespace prefix for a rule group is the following:
awswaf:<account ID>:rule group:<rule group name>:
When a rule with a label matches a web request, AWS WAF adds the fully qualified label to the request. A fully qualified label is made up of the label namespace from the rule group or web ACL where the rule is defined and the label from the rule, separated by a colon.
- Rules
List<Pulumi.
Aws Native. Wa Fv2. Outputs. Rule Group Rule> - Collection of Rules.
- List<Pulumi.
Aws Native. Outputs. Tag> Key:value pairs associated with an AWS 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 AWS resource.
To modify tags on existing resources, use the AWS WAF APIs or command line interface. With AWS CloudFormation , you can only add tags to AWS WAF resources during resource creation.
- Visibility
Config Pulumi.Aws Native. Wa Fv2. Outputs. Rule Group Visibility Config - Defines and enables Amazon CloudWatch metrics and web request sample collection.
- Arn string
- The Amazon Resource Name (ARN) of the rule group.
- Available
Labels []RuleGroup Label Summary - Collection of Available Labels.
- Capacity int
The web ACL capacity units (WCUs) required for this rule group.
When you create your own rule group, you define this, and you cannot change it after creation. When you add or modify the rules in a rule group, AWS WAF enforces this limit.
AWS WAF uses WCUs to calculate and control the operating resources that are used to run your rules, rule groups, and web ACLs. AWS WAF calculates capacity differently for each rule type, to reflect the relative cost of each rule. Simple rules that cost little to run use fewer WCUs than more complex rules that use more processing power. Rule group capacity is fixed at creation, which helps users plan their web ACL WCU usage when they use a rule group. The WCU limit for web ACLs is 1,500.
- Consumed
Labels []RuleGroup Label Summary - Collection of Consumed Labels.
- Custom
Response map[string]RuleBodies Group Custom Response Body A map of custom response keys and content bodies. When you create a rule with a block action, you can send a custom response to the web request. You define these for the rule group, and then use them in the rules that you define in the rule group.
For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the AWS WAF Developer Guide .
For information about the limits on count and size for custom request and response settings, see AWS WAF quotas in the AWS WAF Developer Guide .
- Description string
- A description of the rule group that helps with identification.
- Id string
- The ID of the rule group.
- Label
Namespace string The label namespace prefix for this rule group. All labels added by rules in this rule group have this prefix.
The syntax for the label namespace prefix for a rule group is the following:
awswaf:<account ID>:rule group:<rule group name>:
When a rule with a label matches a web request, AWS WAF adds the fully qualified label to the request. A fully qualified label is made up of the label namespace from the rule group or web ACL where the rule is defined and the label from the rule, separated by a colon.
- Rules
[]Rule
Group Rule - Collection of Rules.
- Tag
Key:value pairs associated with an AWS 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 AWS resource.
To modify tags on existing resources, use the AWS WAF APIs or command line interface. With AWS CloudFormation , you can only add tags to AWS WAF resources during resource creation.
- Visibility
Config RuleGroup Visibility Config - Defines and enables Amazon CloudWatch metrics and web request sample collection.
- arn String
- The Amazon Resource Name (ARN) of the rule group.
- available
Labels List<RuleGroup Label Summary> - Collection of Available Labels.
- capacity Integer
The web ACL capacity units (WCUs) required for this rule group.
When you create your own rule group, you define this, and you cannot change it after creation. When you add or modify the rules in a rule group, AWS WAF enforces this limit.
AWS WAF uses WCUs to calculate and control the operating resources that are used to run your rules, rule groups, and web ACLs. AWS WAF calculates capacity differently for each rule type, to reflect the relative cost of each rule. Simple rules that cost little to run use fewer WCUs than more complex rules that use more processing power. Rule group capacity is fixed at creation, which helps users plan their web ACL WCU usage when they use a rule group. The WCU limit for web ACLs is 1,500.
- consumed
Labels List<RuleGroup Label Summary> - Collection of Consumed Labels.
- custom
Response Map<String,RuleBodies Group Custom Response Body> A map of custom response keys and content bodies. When you create a rule with a block action, you can send a custom response to the web request. You define these for the rule group, and then use them in the rules that you define in the rule group.
For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the AWS WAF Developer Guide .
For information about the limits on count and size for custom request and response settings, see AWS WAF quotas in the AWS WAF Developer Guide .
- description String
- A description of the rule group that helps with identification.
- id String
- The ID of the rule group.
- label
Namespace String The label namespace prefix for this rule group. All labels added by rules in this rule group have this prefix.
The syntax for the label namespace prefix for a rule group is the following:
awswaf:<account ID>:rule group:<rule group name>:
When a rule with a label matches a web request, AWS WAF adds the fully qualified label to the request. A fully qualified label is made up of the label namespace from the rule group or web ACL where the rule is defined and the label from the rule, separated by a colon.
- rules
List<Rule
Group Rule> - Collection of Rules.
- List<Tag>
Key:value pairs associated with an AWS 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 AWS resource.
To modify tags on existing resources, use the AWS WAF APIs or command line interface. With AWS CloudFormation , you can only add tags to AWS WAF resources during resource creation.
- visibility
Config RuleGroup Visibility Config - Defines and enables Amazon CloudWatch metrics and web request sample collection.
- arn string
- The Amazon Resource Name (ARN) of the rule group.
- available
Labels RuleGroup Label Summary[] - Collection of Available Labels.
- capacity number
The web ACL capacity units (WCUs) required for this rule group.
When you create your own rule group, you define this, and you cannot change it after creation. When you add or modify the rules in a rule group, AWS WAF enforces this limit.
AWS WAF uses WCUs to calculate and control the operating resources that are used to run your rules, rule groups, and web ACLs. AWS WAF calculates capacity differently for each rule type, to reflect the relative cost of each rule. Simple rules that cost little to run use fewer WCUs than more complex rules that use more processing power. Rule group capacity is fixed at creation, which helps users plan their web ACL WCU usage when they use a rule group. The WCU limit for web ACLs is 1,500.
- consumed
Labels RuleGroup Label Summary[] - Collection of Consumed Labels.
- custom
Response {[key: string]: RuleBodies Group Custom Response Body} A map of custom response keys and content bodies. When you create a rule with a block action, you can send a custom response to the web request. You define these for the rule group, and then use them in the rules that you define in the rule group.
For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the AWS WAF Developer Guide .
For information about the limits on count and size for custom request and response settings, see AWS WAF quotas in the AWS WAF Developer Guide .
- description string
- A description of the rule group that helps with identification.
- id string
- The ID of the rule group.
- label
Namespace string The label namespace prefix for this rule group. All labels added by rules in this rule group have this prefix.
The syntax for the label namespace prefix for a rule group is the following:
awswaf:<account ID>:rule group:<rule group name>:
When a rule with a label matches a web request, AWS WAF adds the fully qualified label to the request. A fully qualified label is made up of the label namespace from the rule group or web ACL where the rule is defined and the label from the rule, separated by a colon.
- rules
Rule
Group Rule[] - Collection of Rules.
- Tag[]
Key:value pairs associated with an AWS 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 AWS resource.
To modify tags on existing resources, use the AWS WAF APIs or command line interface. With AWS CloudFormation , you can only add tags to AWS WAF resources during resource creation.
- visibility
Config RuleGroup Visibility Config - Defines and enables Amazon CloudWatch metrics and web request sample collection.
- arn str
- The Amazon Resource Name (ARN) of the rule group.
- available_
labels Sequence[RuleGroup Label Summary] - Collection of Available Labels.
- capacity int
The web ACL capacity units (WCUs) required for this rule group.
When you create your own rule group, you define this, and you cannot change it after creation. When you add or modify the rules in a rule group, AWS WAF enforces this limit.
AWS WAF uses WCUs to calculate and control the operating resources that are used to run your rules, rule groups, and web ACLs. AWS WAF calculates capacity differently for each rule type, to reflect the relative cost of each rule. Simple rules that cost little to run use fewer WCUs than more complex rules that use more processing power. Rule group capacity is fixed at creation, which helps users plan their web ACL WCU usage when they use a rule group. The WCU limit for web ACLs is 1,500.
- consumed_
labels Sequence[RuleGroup Label Summary] - Collection of Consumed Labels.
- custom_
response_ Mapping[str, Rulebodies Group Custom Response Body] A map of custom response keys and content bodies. When you create a rule with a block action, you can send a custom response to the web request. You define these for the rule group, and then use them in the rules that you define in the rule group.
For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the AWS WAF Developer Guide .
For information about the limits on count and size for custom request and response settings, see AWS WAF quotas in the AWS WAF Developer Guide .
- description str
- A description of the rule group that helps with identification.
- id str
- The ID of the rule group.
- label_
namespace str The label namespace prefix for this rule group. All labels added by rules in this rule group have this prefix.
The syntax for the label namespace prefix for a rule group is the following:
awswaf:<account ID>:rule group:<rule group name>:
When a rule with a label matches a web request, AWS WAF adds the fully qualified label to the request. A fully qualified label is made up of the label namespace from the rule group or web ACL where the rule is defined and the label from the rule, separated by a colon.
- rules
Sequence[Rule
Group Rule] - Collection of Rules.
- Sequence[root_Tag]
Key:value pairs associated with an AWS 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 AWS resource.
To modify tags on existing resources, use the AWS WAF APIs or command line interface. With AWS CloudFormation , you can only add tags to AWS WAF resources during resource creation.
- visibility_
config RuleGroup Visibility Config - Defines and enables Amazon CloudWatch metrics and web request sample collection.
- arn String
- The Amazon Resource Name (ARN) of the rule group.
- available
Labels List<Property Map> - Collection of Available Labels.
- capacity Number
The web ACL capacity units (WCUs) required for this rule group.
When you create your own rule group, you define this, and you cannot change it after creation. When you add or modify the rules in a rule group, AWS WAF enforces this limit.
AWS WAF uses WCUs to calculate and control the operating resources that are used to run your rules, rule groups, and web ACLs. AWS WAF calculates capacity differently for each rule type, to reflect the relative cost of each rule. Simple rules that cost little to run use fewer WCUs than more complex rules that use more processing power. Rule group capacity is fixed at creation, which helps users plan their web ACL WCU usage when they use a rule group. The WCU limit for web ACLs is 1,500.
- consumed
Labels List<Property Map> - Collection of Consumed Labels.
- custom
Response Map<Property Map>Bodies A map of custom response keys and content bodies. When you create a rule with a block action, you can send a custom response to the web request. You define these for the rule group, and then use them in the rules that you define in the rule group.
For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the AWS WAF Developer Guide .
For information about the limits on count and size for custom request and response settings, see AWS WAF quotas in the AWS WAF Developer Guide .
- description String
- A description of the rule group that helps with identification.
- id String
- The ID of the rule group.
- label
Namespace String The label namespace prefix for this rule group. All labels added by rules in this rule group have this prefix.
The syntax for the label namespace prefix for a rule group is the following:
awswaf:<account ID>:rule group:<rule group name>:
When a rule with a label matches a web request, AWS WAF adds the fully qualified label to the request. A fully qualified label is made up of the label namespace from the rule group or web ACL where the rule is defined and the label from the rule, separated by a colon.
- rules List<Property Map>
- Collection of Rules.
- List<Property Map>
Key:value pairs associated with an AWS 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 AWS resource.
To modify tags on existing resources, use the AWS WAF APIs or command line interface. With AWS CloudFormation , you can only add tags to AWS WAF resources during resource creation.
- visibility
Config Property Map - Defines and enables Amazon CloudWatch metrics and web request sample collection.
Supporting Types
RuleGroupAllowAction
- Custom
Request Pulumi.Handling Aws Native. Wa Fv2. Inputs. Rule Group Custom Request Handling Defines custom handling for the web request.
For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the AWS WAF Developer Guide .
- Custom
Request RuleHandling Group Custom Request Handling Defines custom handling for the web request.
For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the AWS WAF Developer Guide .
- custom
Request RuleHandling Group Custom Request Handling Defines custom handling for the web request.
For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the AWS WAF Developer Guide .
- custom
Request RuleHandling Group Custom Request Handling Defines custom handling for the web request.
For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the AWS WAF Developer Guide .
- custom_
request_ Rulehandling Group Custom Request Handling Defines custom handling for the web request.
For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the AWS WAF Developer Guide .
- custom
Request Property MapHandling Defines custom handling for the web request.
For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the AWS WAF Developer Guide .
RuleGroupAndStatement
- Statements
List<Pulumi.
Aws Native. Wa Fv2. Inputs. Rule Group Statement> - The statements to combine with AND logic. You can use any statements that can be nested.
- Statements
[]Rule
Group Statement - The statements to combine with AND logic. You can use any statements that can be nested.
- statements
List<Rule
Group Statement> - The statements to combine with AND logic. You can use any statements that can be nested.
- statements
Rule
Group Statement[] - The statements to combine with AND logic. You can use any statements that can be nested.
- statements
Sequence[Rule
Group Statement] - The statements to combine with AND logic. You can use any statements that can be nested.
- statements List<Property Map>
- The statements to combine with AND logic. You can use any statements that can be nested.
RuleGroupBlockAction
- Custom
Response Pulumi.Aws Native. Wa Fv2. Inputs. Rule Group Custom Response Defines a custom response for the web request.
For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the AWS WAF Developer Guide .
- Custom
Response RuleGroup Custom Response Defines a custom response for the web request.
For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the AWS WAF Developer Guide .
- custom
Response RuleGroup Custom Response Defines a custom response for the web request.
For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the AWS WAF Developer Guide .
- custom
Response RuleGroup Custom Response Defines a custom response for the web request.
For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the AWS WAF Developer Guide .
- custom_
response RuleGroup Custom Response Defines a custom response for the web request.
For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the AWS WAF Developer Guide .
- custom
Response Property Map Defines a custom response for the web request.
For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the AWS WAF Developer Guide .
RuleGroupBody
- Oversize
Handling Pulumi.Aws Native. Wa Fv2. Rule Group Oversize Handling What AWS WAF should do if the body is larger than AWS WAF can inspect.
AWS WAF does not support inspecting the entire contents of the web request body if the body exceeds the limit for the resource type. When a web request body is larger than the limit, the underlying host service only forwards the contents that are within the limit to AWS WAF for inspection.
- For Application Load Balancer and AWS AppSync , the limit is fixed at 8 KB (8,192 bytes).
- For CloudFront, API Gateway, Amazon Cognito, App Runner, and Verified Access, the default limit is 16 KB (16,384 bytes), and you can increase the limit for each resource type in the web ACL
AssociationConfig
, for additional processing fees.
The options for oversize handling are the following:
CONTINUE
- Inspect the available body contents normally, according to the rule inspection criteria.MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
You can combine the
MATCH
orNO_MATCH
settings for oversize handling with your rule and web ACL action settings, so that you block any request whose body is over the limit.Default:
CONTINUE
- Oversize
Handling RuleGroup Oversize Handling What AWS WAF should do if the body is larger than AWS WAF can inspect.
AWS WAF does not support inspecting the entire contents of the web request body if the body exceeds the limit for the resource type. When a web request body is larger than the limit, the underlying host service only forwards the contents that are within the limit to AWS WAF for inspection.
- For Application Load Balancer and AWS AppSync , the limit is fixed at 8 KB (8,192 bytes).
- For CloudFront, API Gateway, Amazon Cognito, App Runner, and Verified Access, the default limit is 16 KB (16,384 bytes), and you can increase the limit for each resource type in the web ACL
AssociationConfig
, for additional processing fees.
The options for oversize handling are the following:
CONTINUE
- Inspect the available body contents normally, according to the rule inspection criteria.MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
You can combine the
MATCH
orNO_MATCH
settings for oversize handling with your rule and web ACL action settings, so that you block any request whose body is over the limit.Default:
CONTINUE
- oversize
Handling RuleGroup Oversize Handling What AWS WAF should do if the body is larger than AWS WAF can inspect.
AWS WAF does not support inspecting the entire contents of the web request body if the body exceeds the limit for the resource type. When a web request body is larger than the limit, the underlying host service only forwards the contents that are within the limit to AWS WAF for inspection.
- For Application Load Balancer and AWS AppSync , the limit is fixed at 8 KB (8,192 bytes).
- For CloudFront, API Gateway, Amazon Cognito, App Runner, and Verified Access, the default limit is 16 KB (16,384 bytes), and you can increase the limit for each resource type in the web ACL
AssociationConfig
, for additional processing fees.
The options for oversize handling are the following:
CONTINUE
- Inspect the available body contents normally, according to the rule inspection criteria.MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
You can combine the
MATCH
orNO_MATCH
settings for oversize handling with your rule and web ACL action settings, so that you block any request whose body is over the limit.Default:
CONTINUE
- oversize
Handling RuleGroup Oversize Handling What AWS WAF should do if the body is larger than AWS WAF can inspect.
AWS WAF does not support inspecting the entire contents of the web request body if the body exceeds the limit for the resource type. When a web request body is larger than the limit, the underlying host service only forwards the contents that are within the limit to AWS WAF for inspection.
- For Application Load Balancer and AWS AppSync , the limit is fixed at 8 KB (8,192 bytes).
- For CloudFront, API Gateway, Amazon Cognito, App Runner, and Verified Access, the default limit is 16 KB (16,384 bytes), and you can increase the limit for each resource type in the web ACL
AssociationConfig
, for additional processing fees.
The options for oversize handling are the following:
CONTINUE
- Inspect the available body contents normally, according to the rule inspection criteria.MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
You can combine the
MATCH
orNO_MATCH
settings for oversize handling with your rule and web ACL action settings, so that you block any request whose body is over the limit.Default:
CONTINUE
- oversize_
handling RuleGroup Oversize Handling What AWS WAF should do if the body is larger than AWS WAF can inspect.
AWS WAF does not support inspecting the entire contents of the web request body if the body exceeds the limit for the resource type. When a web request body is larger than the limit, the underlying host service only forwards the contents that are within the limit to AWS WAF for inspection.
- For Application Load Balancer and AWS AppSync , the limit is fixed at 8 KB (8,192 bytes).
- For CloudFront, API Gateway, Amazon Cognito, App Runner, and Verified Access, the default limit is 16 KB (16,384 bytes), and you can increase the limit for each resource type in the web ACL
AssociationConfig
, for additional processing fees.
The options for oversize handling are the following:
CONTINUE
- Inspect the available body contents normally, according to the rule inspection criteria.MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
You can combine the
MATCH
orNO_MATCH
settings for oversize handling with your rule and web ACL action settings, so that you block any request whose body is over the limit.Default:
CONTINUE
- oversize
Handling "CONTINUE" | "MATCH" | "NO_MATCH" What AWS WAF should do if the body is larger than AWS WAF can inspect.
AWS WAF does not support inspecting the entire contents of the web request body if the body exceeds the limit for the resource type. When a web request body is larger than the limit, the underlying host service only forwards the contents that are within the limit to AWS WAF for inspection.
- For Application Load Balancer and AWS AppSync , the limit is fixed at 8 KB (8,192 bytes).
- For CloudFront, API Gateway, Amazon Cognito, App Runner, and Verified Access, the default limit is 16 KB (16,384 bytes), and you can increase the limit for each resource type in the web ACL
AssociationConfig
, for additional processing fees.
The options for oversize handling are the following:
CONTINUE
- Inspect the available body contents normally, according to the rule inspection criteria.MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
You can combine the
MATCH
orNO_MATCH
settings for oversize handling with your rule and web ACL action settings, so that you block any request whose body is over the limit.Default:
CONTINUE
RuleGroupBodyParsingFallbackBehavior
RuleGroupByteMatchStatement
- Field
To Pulumi.Match Aws Native. Wa Fv2. Inputs. Rule Group Field To Match - The part of the web request that you want AWS WAF to inspect.
- Positional
Constraint Pulumi.Aws Native. Wa Fv2. Rule Group Positional Constraint The area within the portion of the web request that you want AWS WAF to search for
SearchString
. Valid values include the following:CONTAINS
The specified part of the web request must include the value of
SearchString
, but the location doesn't matter.CONTAINS_WORD
The specified part of the web request must include the value of
SearchString
, andSearchString
must contain only alphanumeric characters or underscore (A-Z, a-z, 0-9, or _). In addition,SearchString
must be a word, which means that both of the following are true:SearchString
is at the beginning of the specified part of the web request or is preceded by a character other than an alphanumeric character or underscore (_). Examples include the value of a header and;BadBot
.SearchString
is at the end of the specified part of the web request or is followed by a character other than an alphanumeric character or underscore (_), for example,BadBot;
and-BadBot;
.
EXACTLY
The value of the specified part of the web request must exactly match the value of
SearchString
.STARTS_WITH
The value of
SearchString
must appear at the beginning of the specified part of the web request.ENDS_WITH
The value of
SearchString
must appear at the end of the specified part of the web request.- Text
Transformations List<Pulumi.Aws Native. Wa Fv2. Inputs. Rule Group Text Transformation> - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. If you specify one or more transformations in a rule statement, AWS WAF performs all transformations on the content of the request component identified by
FieldToMatch
, starting from the lowest priority setting, before inspecting the content for a match. - Search
String string A string value that you want AWS WAF to search for. AWS WAF searches only in the part of web requests that you designate for inspection in
FieldToMatch
. The maximum length of the value is 200 bytes. For alphabetic characters A-Z and a-z, the value is case sensitive.Don't encode this string. Provide the value that you want AWS WAF to search for. AWS CloudFormation automatically base64 encodes the value for you.
For example, suppose the value of
Type
isHEADER
and the value ofData
isUser-Agent
. If you want to search theUser-Agent
header for the valueBadBot
, you provide the stringBadBot
in the value ofSearchString
.You must specify either
SearchString
orSearchStringBase64
in aByteMatchStatement
.- Search
String stringBase64 String to search for in a web request component, base64-encoded. If you don't want to encode the string, specify the unencoded value in
SearchString
instead.You must specify either
SearchString
orSearchStringBase64
in aByteMatchStatement
.
- Field
To RuleMatch Group Field To Match - The part of the web request that you want AWS WAF to inspect.
- Positional
Constraint RuleGroup Positional Constraint The area within the portion of the web request that you want AWS WAF to search for
SearchString
. Valid values include the following:CONTAINS
The specified part of the web request must include the value of
SearchString
, but the location doesn't matter.CONTAINS_WORD
The specified part of the web request must include the value of
SearchString
, andSearchString
must contain only alphanumeric characters or underscore (A-Z, a-z, 0-9, or _). In addition,SearchString
must be a word, which means that both of the following are true:SearchString
is at the beginning of the specified part of the web request or is preceded by a character other than an alphanumeric character or underscore (_). Examples include the value of a header and;BadBot
.SearchString
is at the end of the specified part of the web request or is followed by a character other than an alphanumeric character or underscore (_), for example,BadBot;
and-BadBot;
.
EXACTLY
The value of the specified part of the web request must exactly match the value of
SearchString
.STARTS_WITH
The value of
SearchString
must appear at the beginning of the specified part of the web request.ENDS_WITH
The value of
SearchString
must appear at the end of the specified part of the web request.- Text
Transformations []RuleGroup Text Transformation - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. If you specify one or more transformations in a rule statement, AWS WAF performs all transformations on the content of the request component identified by
FieldToMatch
, starting from the lowest priority setting, before inspecting the content for a match. - Search
String string A string value that you want AWS WAF to search for. AWS WAF searches only in the part of web requests that you designate for inspection in
FieldToMatch
. The maximum length of the value is 200 bytes. For alphabetic characters A-Z and a-z, the value is case sensitive.Don't encode this string. Provide the value that you want AWS WAF to search for. AWS CloudFormation automatically base64 encodes the value for you.
For example, suppose the value of
Type
isHEADER
and the value ofData
isUser-Agent
. If you want to search theUser-Agent
header for the valueBadBot
, you provide the stringBadBot
in the value ofSearchString
.You must specify either
SearchString
orSearchStringBase64
in aByteMatchStatement
.- Search
String stringBase64 String to search for in a web request component, base64-encoded. If you don't want to encode the string, specify the unencoded value in
SearchString
instead.You must specify either
SearchString
orSearchStringBase64
in aByteMatchStatement
.
- field
To RuleMatch Group Field To Match - The part of the web request that you want AWS WAF to inspect.
- positional
Constraint RuleGroup Positional Constraint The area within the portion of the web request that you want AWS WAF to search for
SearchString
. Valid values include the following:CONTAINS
The specified part of the web request must include the value of
SearchString
, but the location doesn't matter.CONTAINS_WORD
The specified part of the web request must include the value of
SearchString
, andSearchString
must contain only alphanumeric characters or underscore (A-Z, a-z, 0-9, or _). In addition,SearchString
must be a word, which means that both of the following are true:SearchString
is at the beginning of the specified part of the web request or is preceded by a character other than an alphanumeric character or underscore (_). Examples include the value of a header and;BadBot
.SearchString
is at the end of the specified part of the web request or is followed by a character other than an alphanumeric character or underscore (_), for example,BadBot;
and-BadBot;
.
EXACTLY
The value of the specified part of the web request must exactly match the value of
SearchString
.STARTS_WITH
The value of
SearchString
must appear at the beginning of the specified part of the web request.ENDS_WITH
The value of
SearchString
must appear at the end of the specified part of the web request.- text
Transformations List<RuleGroup Text Transformation> - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. If you specify one or more transformations in a rule statement, AWS WAF performs all transformations on the content of the request component identified by
FieldToMatch
, starting from the lowest priority setting, before inspecting the content for a match. - search
String String A string value that you want AWS WAF to search for. AWS WAF searches only in the part of web requests that you designate for inspection in
FieldToMatch
. The maximum length of the value is 200 bytes. For alphabetic characters A-Z and a-z, the value is case sensitive.Don't encode this string. Provide the value that you want AWS WAF to search for. AWS CloudFormation automatically base64 encodes the value for you.
For example, suppose the value of
Type
isHEADER
and the value ofData
isUser-Agent
. If you want to search theUser-Agent
header for the valueBadBot
, you provide the stringBadBot
in the value ofSearchString
.You must specify either
SearchString
orSearchStringBase64
in aByteMatchStatement
.- search
String StringBase64 String to search for in a web request component, base64-encoded. If you don't want to encode the string, specify the unencoded value in
SearchString
instead.You must specify either
SearchString
orSearchStringBase64
in aByteMatchStatement
.
- field
To RuleMatch Group Field To Match - The part of the web request that you want AWS WAF to inspect.
- positional
Constraint RuleGroup Positional Constraint The area within the portion of the web request that you want AWS WAF to search for
SearchString
. Valid values include the following:CONTAINS
The specified part of the web request must include the value of
SearchString
, but the location doesn't matter.CONTAINS_WORD
The specified part of the web request must include the value of
SearchString
, andSearchString
must contain only alphanumeric characters or underscore (A-Z, a-z, 0-9, or _). In addition,SearchString
must be a word, which means that both of the following are true:SearchString
is at the beginning of the specified part of the web request or is preceded by a character other than an alphanumeric character or underscore (_). Examples include the value of a header and;BadBot
.SearchString
is at the end of the specified part of the web request or is followed by a character other than an alphanumeric character or underscore (_), for example,BadBot;
and-BadBot;
.
EXACTLY
The value of the specified part of the web request must exactly match the value of
SearchString
.STARTS_WITH
The value of
SearchString
must appear at the beginning of the specified part of the web request.ENDS_WITH
The value of
SearchString
must appear at the end of the specified part of the web request.- text
Transformations RuleGroup Text Transformation[] - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. If you specify one or more transformations in a rule statement, AWS WAF performs all transformations on the content of the request component identified by
FieldToMatch
, starting from the lowest priority setting, before inspecting the content for a match. - search
String string A string value that you want AWS WAF to search for. AWS WAF searches only in the part of web requests that you designate for inspection in
FieldToMatch
. The maximum length of the value is 200 bytes. For alphabetic characters A-Z and a-z, the value is case sensitive.Don't encode this string. Provide the value that you want AWS WAF to search for. AWS CloudFormation automatically base64 encodes the value for you.
For example, suppose the value of
Type
isHEADER
and the value ofData
isUser-Agent
. If you want to search theUser-Agent
header for the valueBadBot
, you provide the stringBadBot
in the value ofSearchString
.You must specify either
SearchString
orSearchStringBase64
in aByteMatchStatement
.- search
String stringBase64 String to search for in a web request component, base64-encoded. If you don't want to encode the string, specify the unencoded value in
SearchString
instead.You must specify either
SearchString
orSearchStringBase64
in aByteMatchStatement
.
- field_
to_ Rulematch Group Field To Match - The part of the web request that you want AWS WAF to inspect.
- positional_
constraint RuleGroup Positional Constraint The area within the portion of the web request that you want AWS WAF to search for
SearchString
. Valid values include the following:CONTAINS
The specified part of the web request must include the value of
SearchString
, but the location doesn't matter.CONTAINS_WORD
The specified part of the web request must include the value of
SearchString
, andSearchString
must contain only alphanumeric characters or underscore (A-Z, a-z, 0-9, or _). In addition,SearchString
must be a word, which means that both of the following are true:SearchString
is at the beginning of the specified part of the web request or is preceded by a character other than an alphanumeric character or underscore (_). Examples include the value of a header and;BadBot
.SearchString
is at the end of the specified part of the web request or is followed by a character other than an alphanumeric character or underscore (_), for example,BadBot;
and-BadBot;
.
EXACTLY
The value of the specified part of the web request must exactly match the value of
SearchString
.STARTS_WITH
The value of
SearchString
must appear at the beginning of the specified part of the web request.ENDS_WITH
The value of
SearchString
must appear at the end of the specified part of the web request.- text_
transformations Sequence[RuleGroup Text Transformation] - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. If you specify one or more transformations in a rule statement, AWS WAF performs all transformations on the content of the request component identified by
FieldToMatch
, starting from the lowest priority setting, before inspecting the content for a match. - search_
string str A string value that you want AWS WAF to search for. AWS WAF searches only in the part of web requests that you designate for inspection in
FieldToMatch
. The maximum length of the value is 200 bytes. For alphabetic characters A-Z and a-z, the value is case sensitive.Don't encode this string. Provide the value that you want AWS WAF to search for. AWS CloudFormation automatically base64 encodes the value for you.
For example, suppose the value of
Type
isHEADER
and the value ofData
isUser-Agent
. If you want to search theUser-Agent
header for the valueBadBot
, you provide the stringBadBot
in the value ofSearchString
.You must specify either
SearchString
orSearchStringBase64
in aByteMatchStatement
.- search_
string_ strbase64 String to search for in a web request component, base64-encoded. If you don't want to encode the string, specify the unencoded value in
SearchString
instead.You must specify either
SearchString
orSearchStringBase64
in aByteMatchStatement
.
- field
To Property MapMatch - The part of the web request that you want AWS WAF to inspect.
- positional
Constraint "EXACTLY" | "STARTS_WITH" | "ENDS_WITH" | "CONTAINS" | "CONTAINS_WORD" The area within the portion of the web request that you want AWS WAF to search for
SearchString
. Valid values include the following:CONTAINS
The specified part of the web request must include the value of
SearchString
, but the location doesn't matter.CONTAINS_WORD
The specified part of the web request must include the value of
SearchString
, andSearchString
must contain only alphanumeric characters or underscore (A-Z, a-z, 0-9, or _). In addition,SearchString
must be a word, which means that both of the following are true:SearchString
is at the beginning of the specified part of the web request or is preceded by a character other than an alphanumeric character or underscore (_). Examples include the value of a header and;BadBot
.SearchString
is at the end of the specified part of the web request or is followed by a character other than an alphanumeric character or underscore (_), for example,BadBot;
and-BadBot;
.
EXACTLY
The value of the specified part of the web request must exactly match the value of
SearchString
.STARTS_WITH
The value of
SearchString
must appear at the beginning of the specified part of the web request.ENDS_WITH
The value of
SearchString
must appear at the end of the specified part of the web request.- text
Transformations List<Property Map> - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. If you specify one or more transformations in a rule statement, AWS WAF performs all transformations on the content of the request component identified by
FieldToMatch
, starting from the lowest priority setting, before inspecting the content for a match. - search
String String A string value that you want AWS WAF to search for. AWS WAF searches only in the part of web requests that you designate for inspection in
FieldToMatch
. The maximum length of the value is 200 bytes. For alphabetic characters A-Z and a-z, the value is case sensitive.Don't encode this string. Provide the value that you want AWS WAF to search for. AWS CloudFormation automatically base64 encodes the value for you.
For example, suppose the value of
Type
isHEADER
and the value ofData
isUser-Agent
. If you want to search theUser-Agent
header for the valueBadBot
, you provide the stringBadBot
in the value ofSearchString
.You must specify either
SearchString
orSearchStringBase64
in aByteMatchStatement
.- search
String StringBase64 String to search for in a web request component, base64-encoded. If you don't want to encode the string, specify the unencoded value in
SearchString
instead.You must specify either
SearchString
orSearchStringBase64
in aByteMatchStatement
.
RuleGroupCaptchaAction
- Custom
Request Pulumi.Handling Aws Native. Wa Fv2. Inputs. Rule Group Custom Request Handling Defines custom handling for the web request, used when the
CAPTCHA
inspection determines that the request's token is valid and unexpired.For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the AWS WAF Developer Guide .
- Custom
Request RuleHandling Group Custom Request Handling Defines custom handling for the web request, used when the
CAPTCHA
inspection determines that the request's token is valid and unexpired.For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the AWS WAF Developer Guide .
- custom
Request RuleHandling Group Custom Request Handling Defines custom handling for the web request, used when the
CAPTCHA
inspection determines that the request's token is valid and unexpired.For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the AWS WAF Developer Guide .
- custom
Request RuleHandling Group Custom Request Handling Defines custom handling for the web request, used when the
CAPTCHA
inspection determines that the request's token is valid and unexpired.For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the AWS WAF Developer Guide .
- custom_
request_ Rulehandling Group Custom Request Handling Defines custom handling for the web request, used when the
CAPTCHA
inspection determines that the request's token is valid and unexpired.For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the AWS WAF Developer Guide .
- custom
Request Property MapHandling Defines custom handling for the web request, used when the
CAPTCHA
inspection determines that the request's token is valid and unexpired.For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the AWS WAF Developer Guide .
RuleGroupCaptchaConfig
- Immunity
Time Pulumi.Property Aws Native. Wa Fv2. Inputs. Rule Group Immunity Time Property - Determines how long a
CAPTCHA
timestamp in the token remains valid after the client successfully solves aCAPTCHA
puzzle.
- Immunity
Time RuleProperty Group Immunity Time Property - Determines how long a
CAPTCHA
timestamp in the token remains valid after the client successfully solves aCAPTCHA
puzzle.
- immunity
Time RuleProperty Group Immunity Time Property - Determines how long a
CAPTCHA
timestamp in the token remains valid after the client successfully solves aCAPTCHA
puzzle.
- immunity
Time RuleProperty Group Immunity Time Property - Determines how long a
CAPTCHA
timestamp in the token remains valid after the client successfully solves aCAPTCHA
puzzle.
- immunity_
time_ Ruleproperty Group Immunity Time Property - Determines how long a
CAPTCHA
timestamp in the token remains valid after the client successfully solves aCAPTCHA
puzzle.
- immunity
Time Property MapProperty - Determines how long a
CAPTCHA
timestamp in the token remains valid after the client successfully solves aCAPTCHA
puzzle.
RuleGroupChallengeAction
- Custom
Request Pulumi.Handling Aws Native. Wa Fv2. Inputs. Rule Group Custom Request Handling Defines custom handling for the web request, used when the challenge inspection determines that the request's token is valid and unexpired.
For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the AWS WAF Developer Guide .
- Custom
Request RuleHandling Group Custom Request Handling Defines custom handling for the web request, used when the challenge inspection determines that the request's token is valid and unexpired.
For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the AWS WAF Developer Guide .
- custom
Request RuleHandling Group Custom Request Handling Defines custom handling for the web request, used when the challenge inspection determines that the request's token is valid and unexpired.
For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the AWS WAF Developer Guide .
- custom
Request RuleHandling Group Custom Request Handling Defines custom handling for the web request, used when the challenge inspection determines that the request's token is valid and unexpired.
For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the AWS WAF Developer Guide .
- custom_
request_ Rulehandling Group Custom Request Handling Defines custom handling for the web request, used when the challenge inspection determines that the request's token is valid and unexpired.
For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the AWS WAF Developer Guide .
- custom
Request Property MapHandling Defines custom handling for the web request, used when the challenge inspection determines that the request's token is valid and unexpired.
For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the AWS WAF Developer Guide .
RuleGroupChallengeConfig
- Immunity
Time Pulumi.Property Aws Native. Wa Fv2. Inputs. Rule Group Immunity Time Property - Determines how long a challenge timestamp in the token remains valid after the client successfully responds to a challenge.
- Immunity
Time RuleProperty Group Immunity Time Property - Determines how long a challenge timestamp in the token remains valid after the client successfully responds to a challenge.
- immunity
Time RuleProperty Group Immunity Time Property - Determines how long a challenge timestamp in the token remains valid after the client successfully responds to a challenge.
- immunity
Time RuleProperty Group Immunity Time Property - Determines how long a challenge timestamp in the token remains valid after the client successfully responds to a challenge.
- immunity_
time_ Ruleproperty Group Immunity Time Property - Determines how long a challenge timestamp in the token remains valid after the client successfully responds to a challenge.
- immunity
Time Property MapProperty - Determines how long a challenge timestamp in the token remains valid after the client successfully responds to a challenge.
RuleGroupCookieMatchPattern
- All object
- Inspect all parts of the web request cookies.
- List<string>
- Inspect only the cookies whose keys don't match any of the strings specified here.
- List<string>
- Inspect only the cookies that have a key that matches one of the strings specified here.
- All interface{}
- Inspect all parts of the web request cookies.
- []string
- Inspect only the cookies whose keys don't match any of the strings specified here.
- []string
- Inspect only the cookies that have a key that matches one of the strings specified here.
- all Object
- Inspect all parts of the web request cookies.
- List<String>
- Inspect only the cookies whose keys don't match any of the strings specified here.
- List<String>
- Inspect only the cookies that have a key that matches one of the strings specified here.
- all any
- Inspect all parts of the web request cookies.
- string[]
- Inspect only the cookies whose keys don't match any of the strings specified here.
- string[]
- Inspect only the cookies that have a key that matches one of the strings specified here.
- all Any
- Inspect all parts of the web request cookies.
- Sequence[str]
- Inspect only the cookies whose keys don't match any of the strings specified here.
- Sequence[str]
- Inspect only the cookies that have a key that matches one of the strings specified here.
- all Any
- Inspect all parts of the web request cookies.
- List<String>
- Inspect only the cookies whose keys don't match any of the strings specified here.
- List<String>
- Inspect only the cookies that have a key that matches one of the strings specified here.
RuleGroupCookies
- Match
Pattern Pulumi.Aws Native. Wa Fv2. Inputs. Rule Group Cookie Match Pattern The filter to use to identify the subset of cookies to inspect in a web request.
You must specify exactly one setting: either
All
,IncludedCookies
, orExcludedCookies
.Example JSON:
"MatchPattern": { "IncludedCookies": [ "session-id-time", "session-id" ] }
- Match
Scope Pulumi.Aws Native. Wa Fv2. Rule Group Map Match Scope The parts of the cookies to inspect with the rule inspection criteria. If you specify
ALL
, AWS WAF inspects both keys and values.All
does not require a match to be found in the keys and a match to be found in the values. It requires a match to be found in the keys or the values or both. To require a match in the keys and in the values, use a logicalAND
statement to combine two match rules, one that inspects the keys and another that inspects the values.- Oversize
Handling Pulumi.Aws Native. Wa Fv2. Rule Group Oversize Handling What AWS WAF should do if the cookies of the request are more numerous or larger than AWS WAF can inspect. AWS WAF does not support inspecting the entire contents of request cookies when they exceed 8 KB (8192 bytes) or 200 total cookies. The underlying host service forwards a maximum of 200 cookies and at most 8 KB of cookie contents to AWS WAF .
The options for oversize handling are the following:
CONTINUE
- Inspect the available cookies normally, according to the rule inspection criteria.MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
- Match
Pattern RuleGroup Cookie Match Pattern The filter to use to identify the subset of cookies to inspect in a web request.
You must specify exactly one setting: either
All
,IncludedCookies
, orExcludedCookies
.Example JSON:
"MatchPattern": { "IncludedCookies": [ "session-id-time", "session-id" ] }
- Match
Scope RuleGroup Map Match Scope The parts of the cookies to inspect with the rule inspection criteria. If you specify
ALL
, AWS WAF inspects both keys and values.All
does not require a match to be found in the keys and a match to be found in the values. It requires a match to be found in the keys or the values or both. To require a match in the keys and in the values, use a logicalAND
statement to combine two match rules, one that inspects the keys and another that inspects the values.- Oversize
Handling RuleGroup Oversize Handling What AWS WAF should do if the cookies of the request are more numerous or larger than AWS WAF can inspect. AWS WAF does not support inspecting the entire contents of request cookies when they exceed 8 KB (8192 bytes) or 200 total cookies. The underlying host service forwards a maximum of 200 cookies and at most 8 KB of cookie contents to AWS WAF .
The options for oversize handling are the following:
CONTINUE
- Inspect the available cookies normally, according to the rule inspection criteria.MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
- match
Pattern RuleGroup Cookie Match Pattern The filter to use to identify the subset of cookies to inspect in a web request.
You must specify exactly one setting: either
All
,IncludedCookies
, orExcludedCookies
.Example JSON:
"MatchPattern": { "IncludedCookies": [ "session-id-time", "session-id" ] }
- match
Scope RuleGroup Map Match Scope The parts of the cookies to inspect with the rule inspection criteria. If you specify
ALL
, AWS WAF inspects both keys and values.All
does not require a match to be found in the keys and a match to be found in the values. It requires a match to be found in the keys or the values or both. To require a match in the keys and in the values, use a logicalAND
statement to combine two match rules, one that inspects the keys and another that inspects the values.- oversize
Handling RuleGroup Oversize Handling What AWS WAF should do if the cookies of the request are more numerous or larger than AWS WAF can inspect. AWS WAF does not support inspecting the entire contents of request cookies when they exceed 8 KB (8192 bytes) or 200 total cookies. The underlying host service forwards a maximum of 200 cookies and at most 8 KB of cookie contents to AWS WAF .
The options for oversize handling are the following:
CONTINUE
- Inspect the available cookies normally, according to the rule inspection criteria.MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
- match
Pattern RuleGroup Cookie Match Pattern The filter to use to identify the subset of cookies to inspect in a web request.
You must specify exactly one setting: either
All
,IncludedCookies
, orExcludedCookies
.Example JSON:
"MatchPattern": { "IncludedCookies": [ "session-id-time", "session-id" ] }
- match
Scope RuleGroup Map Match Scope The parts of the cookies to inspect with the rule inspection criteria. If you specify
ALL
, AWS WAF inspects both keys and values.All
does not require a match to be found in the keys and a match to be found in the values. It requires a match to be found in the keys or the values or both. To require a match in the keys and in the values, use a logicalAND
statement to combine two match rules, one that inspects the keys and another that inspects the values.- oversize
Handling RuleGroup Oversize Handling What AWS WAF should do if the cookies of the request are more numerous or larger than AWS WAF can inspect. AWS WAF does not support inspecting the entire contents of request cookies when they exceed 8 KB (8192 bytes) or 200 total cookies. The underlying host service forwards a maximum of 200 cookies and at most 8 KB of cookie contents to AWS WAF .
The options for oversize handling are the following:
CONTINUE
- Inspect the available cookies normally, according to the rule inspection criteria.MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
- match_
pattern RuleGroup Cookie Match Pattern The filter to use to identify the subset of cookies to inspect in a web request.
You must specify exactly one setting: either
All
,IncludedCookies
, orExcludedCookies
.Example JSON:
"MatchPattern": { "IncludedCookies": [ "session-id-time", "session-id" ] }
- match_
scope RuleGroup Map Match Scope The parts of the cookies to inspect with the rule inspection criteria. If you specify
ALL
, AWS WAF inspects both keys and values.All
does not require a match to be found in the keys and a match to be found in the values. It requires a match to be found in the keys or the values or both. To require a match in the keys and in the values, use a logicalAND
statement to combine two match rules, one that inspects the keys and another that inspects the values.- oversize_
handling RuleGroup Oversize Handling What AWS WAF should do if the cookies of the request are more numerous or larger than AWS WAF can inspect. AWS WAF does not support inspecting the entire contents of request cookies when they exceed 8 KB (8192 bytes) or 200 total cookies. The underlying host service forwards a maximum of 200 cookies and at most 8 KB of cookie contents to AWS WAF .
The options for oversize handling are the following:
CONTINUE
- Inspect the available cookies normally, according to the rule inspection criteria.MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
- match
Pattern Property Map The filter to use to identify the subset of cookies to inspect in a web request.
You must specify exactly one setting: either
All
,IncludedCookies
, orExcludedCookies
.Example JSON:
"MatchPattern": { "IncludedCookies": [ "session-id-time", "session-id" ] }
- match
Scope "ALL" | "KEY" | "VALUE" The parts of the cookies to inspect with the rule inspection criteria. If you specify
ALL
, AWS WAF inspects both keys and values.All
does not require a match to be found in the keys and a match to be found in the values. It requires a match to be found in the keys or the values or both. To require a match in the keys and in the values, use a logicalAND
statement to combine two match rules, one that inspects the keys and another that inspects the values.- oversize
Handling "CONTINUE" | "MATCH" | "NO_MATCH" What AWS WAF should do if the cookies of the request are more numerous or larger than AWS WAF can inspect. AWS WAF does not support inspecting the entire contents of request cookies when they exceed 8 KB (8192 bytes) or 200 total cookies. The underlying host service forwards a maximum of 200 cookies and at most 8 KB of cookie contents to AWS WAF .
The options for oversize handling are the following:
CONTINUE
- Inspect the available cookies normally, according to the rule inspection criteria.MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
RuleGroupCountAction
- Custom
Request Pulumi.Handling Aws Native. Wa Fv2. Inputs. Rule Group Custom Request Handling Defines custom handling for the web request.
For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the AWS WAF Developer Guide .
- Custom
Request RuleHandling Group Custom Request Handling Defines custom handling for the web request.
For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the AWS WAF Developer Guide .
- custom
Request RuleHandling Group Custom Request Handling Defines custom handling for the web request.
For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the AWS WAF Developer Guide .
- custom
Request RuleHandling Group Custom Request Handling Defines custom handling for the web request.
For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the AWS WAF Developer Guide .
- custom_
request_ Rulehandling Group Custom Request Handling Defines custom handling for the web request.
For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the AWS WAF Developer Guide .
- custom
Request Property MapHandling Defines custom handling for the web request.
For information about customizing web requests and responses, see Customizing web requests and responses in AWS WAF in the AWS WAF Developer Guide .
RuleGroupCustomHttpHeader
- Name string
The name of the custom header.
For custom request header insertion, when AWS WAF inserts the header into the request, it prefixes this name
x-amzn-waf-
, to avoid confusion with the headers that are already in the request. For example, for the header namesample
, AWS WAF inserts the headerx-amzn-waf-sample
.- Value string
- The value of the custom header.
- Name string
The name of the custom header.
For custom request header insertion, when AWS WAF inserts the header into the request, it prefixes this name
x-amzn-waf-
, to avoid confusion with the headers that are already in the request. For example, for the header namesample
, AWS WAF inserts the headerx-amzn-waf-sample
.- Value string
- The value of the custom header.
- name String
The name of the custom header.
For custom request header insertion, when AWS WAF inserts the header into the request, it prefixes this name
x-amzn-waf-
, to avoid confusion with the headers that are already in the request. For example, for the header namesample
, AWS WAF inserts the headerx-amzn-waf-sample
.- value String
- The value of the custom header.
- name string
The name of the custom header.
For custom request header insertion, when AWS WAF inserts the header into the request, it prefixes this name
x-amzn-waf-
, to avoid confusion with the headers that are already in the request. For example, for the header namesample
, AWS WAF inserts the headerx-amzn-waf-sample
.- value string
- The value of the custom header.
- name str
The name of the custom header.
For custom request header insertion, when AWS WAF inserts the header into the request, it prefixes this name
x-amzn-waf-
, to avoid confusion with the headers that are already in the request. For example, for the header namesample
, AWS WAF inserts the headerx-amzn-waf-sample
.- value str
- The value of the custom header.
- name String
The name of the custom header.
For custom request header insertion, when AWS WAF inserts the header into the request, it prefixes this name
x-amzn-waf-
, to avoid confusion with the headers that are already in the request. For example, for the header namesample
, AWS WAF inserts the headerx-amzn-waf-sample
.- value String
- The value of the custom header.
RuleGroupCustomRequestHandling
- Insert
Headers List<Pulumi.Aws Native. Wa Fv2. Inputs. Rule Group Custom Http Header> - Collection of HTTP headers.
- Insert
Headers []RuleGroup Custom Http Header - Collection of HTTP headers.
- insert
Headers List<RuleGroup Custom Http Header> - Collection of HTTP headers.
- insert
Headers RuleGroup Custom Http Header[] - Collection of HTTP headers.
- insert_
headers Sequence[RuleGroup Custom Http Header] - Collection of HTTP headers.
- insert
Headers List<Property Map> - Collection of HTTP headers.
RuleGroupCustomResponse
- Response
Code int The HTTP status code to return to the client.
For a list of status codes that you can use in your custom responses, see Supported status codes for custom response in the AWS WAF Developer Guide .
- Custom
Response stringBody Key - Custom response body key.
- Response
Headers List<Pulumi.Aws Native. Wa Fv2. Inputs. Rule Group Custom Http Header> - Collection of HTTP headers.
- Response
Code int The HTTP status code to return to the client.
For a list of status codes that you can use in your custom responses, see Supported status codes for custom response in the AWS WAF Developer Guide .
- Custom
Response stringBody Key - Custom response body key.
- Response
Headers []RuleGroup Custom Http Header - Collection of HTTP headers.
- response
Code Integer The HTTP status code to return to the client.
For a list of status codes that you can use in your custom responses, see Supported status codes for custom response in the AWS WAF Developer Guide .
- custom
Response StringBody Key - Custom response body key.
- response
Headers List<RuleGroup Custom Http Header> - Collection of HTTP headers.
- response
Code number The HTTP status code to return to the client.
For a list of status codes that you can use in your custom responses, see Supported status codes for custom response in the AWS WAF Developer Guide .
- custom
Response stringBody Key - Custom response body key.
- response
Headers RuleGroup Custom Http Header[] - Collection of HTTP headers.
- response_
code int The HTTP status code to return to the client.
For a list of status codes that you can use in your custom responses, see Supported status codes for custom response in the AWS WAF Developer Guide .
- custom_
response_ strbody_ key - Custom response body key.
- response_
headers Sequence[RuleGroup Custom Http Header] - Collection of HTTP headers.
- response
Code Number The HTTP status code to return to the client.
For a list of status codes that you can use in your custom responses, see Supported status codes for custom response in the AWS WAF Developer Guide .
- custom
Response StringBody Key - Custom response body key.
- response
Headers List<Property Map> - Collection of HTTP headers.
RuleGroupCustomResponseBody
- Content string
The payload of the custom response.
You can use JSON escape strings in JSON content. To do this, you must specify JSON content in the
ContentType
setting.For information about the limits on count and size for custom request and response settings, see AWS WAF quotas in the AWS WAF Developer Guide .
- Content
Type Pulumi.Aws Native. Wa Fv2. Rule Group Response Content Type - The type of content in the payload that you are defining in the
Content
string.
- Content string
The payload of the custom response.
You can use JSON escape strings in JSON content. To do this, you must specify JSON content in the
ContentType
setting.For information about the limits on count and size for custom request and response settings, see AWS WAF quotas in the AWS WAF Developer Guide .
- Content
Type RuleGroup Response Content Type - The type of content in the payload that you are defining in the
Content
string.
- content String
The payload of the custom response.
You can use JSON escape strings in JSON content. To do this, you must specify JSON content in the
ContentType
setting.For information about the limits on count and size for custom request and response settings, see AWS WAF quotas in the AWS WAF Developer Guide .
- content
Type RuleGroup Response Content Type - The type of content in the payload that you are defining in the
Content
string.
- content string
The payload of the custom response.
You can use JSON escape strings in JSON content. To do this, you must specify JSON content in the
ContentType
setting.For information about the limits on count and size for custom request and response settings, see AWS WAF quotas in the AWS WAF Developer Guide .
- content
Type RuleGroup Response Content Type - The type of content in the payload that you are defining in the
Content
string.
- content str
The payload of the custom response.
You can use JSON escape strings in JSON content. To do this, you must specify JSON content in the
ContentType
setting.For information about the limits on count and size for custom request and response settings, see AWS WAF quotas in the AWS WAF Developer Guide .
- content_
type RuleGroup Response Content Type - The type of content in the payload that you are defining in the
Content
string.
- content String
The payload of the custom response.
You can use JSON escape strings in JSON content. To do this, you must specify JSON content in the
ContentType
setting.For information about the limits on count and size for custom request and response settings, see AWS WAF quotas in the AWS WAF Developer Guide .
- content
Type "TEXT_PLAIN" | "TEXT_HTML" | "APPLICATION_JSON" - The type of content in the payload that you are defining in the
Content
string.
RuleGroupFieldToMatch
- All
Query objectArguments - All query arguments of a web request.
- Body
Pulumi.
Aws Native. Wa Fv2. Inputs. Rule Group Body Inspect the request body as plain text. The request body immediately follows the request headers. This is the part of a request that contains any additional data that you want to send to your web server as the HTTP request body, such as data from a form.
AWS WAF does not support inspecting the entire contents of the web request body if the body exceeds the limit for the resource type. When a web request body is larger than the limit, the underlying host service only forwards the contents that are within the limit to AWS WAF for inspection.
- For Application Load Balancer and AWS AppSync , the limit is fixed at 8 KB (8,192 bytes).
- For CloudFront, API Gateway, Amazon Cognito, App Runner, and Verified Access, the default limit is 16 KB (16,384 bytes), and you can increase the limit for each resource type in the web ACL
AssociationConfig
, for additional processing fees.
For information about how to handle oversized request bodies, see the
Body
object configuration.- Pulumi.
Aws Native. Wa Fv2. Inputs. Rule Group Cookies Inspect the request cookies. You must configure scope and pattern matching filters in the
Cookies
object, to define the set of cookies and the parts of the cookies that AWS WAF inspects.Only the first 8 KB (8192 bytes) of a request's cookies and only the first 200 cookies are forwarded to AWS WAF for inspection by the underlying host service. You must configure how to handle any oversize cookie content in the
Cookies
object. AWS WAF applies the pattern matching filters to the cookies that it receives from the underlying host service.- Headers
Pulumi.
Aws Native. Wa Fv2. Inputs. Rule Group Headers Inspect the request headers. You must configure scope and pattern matching filters in the
Headers
object, to define the set of headers to and the parts of the headers that AWS WAF inspects.Only the first 8 KB (8192 bytes) of a request's headers and only the first 200 headers are forwarded to AWS WAF for inspection by the underlying host service. You must configure how to handle any oversize header content in the
Headers
object. AWS WAF applies the pattern matching filters to the headers that it receives from the underlying host service.- Ja3Fingerprint
Pulumi.
Aws Native. Wa Fv2. Inputs. Rule Group Ja3Fingerprint Available for use with Amazon CloudFront distributions and Application Load Balancers. Match against the request's JA3 fingerprint. The JA3 fingerprint is a 32-character hash derived from the TLS Client Hello of an incoming request. This fingerprint serves as a unique identifier for the client's TLS configuration. AWS WAF calculates and logs this fingerprint for each request that has enough TLS Client Hello information for the calculation. Almost all web requests include this information.
You can use this choice only with a string match
ByteMatchStatement
with thePositionalConstraint
set toEXACTLY
.You can obtain the JA3 fingerprint for client requests from the web ACL logs. If AWS WAF is able to calculate the fingerprint, it includes it in the logs. For information about the logging fields, see Log fields in the AWS WAF Developer Guide .
Provide the JA3 fingerprint string from the logs in your string match statement specification, to match with any future requests that have the same TLS configuration.
- Json
Body Pulumi.Aws Native. Wa Fv2. Inputs. Rule Group Json Body Inspect the request body as JSON. The request body immediately follows the request headers. This is the part of a request that contains any additional data that you want to send to your web server as the HTTP request body, such as data from a form.
AWS WAF does not support inspecting the entire contents of the web request body if the body exceeds the limit for the resource type. When a web request body is larger than the limit, the underlying host service only forwards the contents that are within the limit to AWS WAF for inspection.
- For Application Load Balancer and AWS AppSync , the limit is fixed at 8 KB (8,192 bytes).
- For CloudFront, API Gateway, Amazon Cognito, App Runner, and Verified Access, the default limit is 16 KB (16,384 bytes), and you can increase the limit for each resource type in the web ACL
AssociationConfig
, for additional processing fees.
For information about how to handle oversized request bodies, see the
JsonBody
object configuration.- Method object
- The HTTP method of a web request. The method indicates the type of operation that the request is asking the origin to perform.
- Query
String object - The query string of a web request. This is the part of a URL that appears after a ? character, if any.
- Single
Header Pulumi.Aws Native. Wa Fv2. Inputs. Rule Group Field To Match Single Header Properties Inspect a single header. Provide the name of the header to inspect, for example,
User-Agent
orReferer
. This setting isn't case sensitive.Example JSON:
"SingleHeader": { "Name": "haystack" }
Alternately, you can filter and inspect all headers with the
Headers
FieldToMatch
setting.- Single
Query Pulumi.Argument Aws Native. Wa Fv2. Inputs. Rule Group Field To Match Single Query Argument Properties - One query argument in a web request, identified by name, for example UserName or SalesRegion. The name can be up to 30 characters long and isn't case sensitive.
- Uri
Path object - The path component of the URI of a web request. This is the part of a web request that identifies a resource, for example, /images/daily-ad.jpg.
- All
Query interface{}Arguments - All query arguments of a web request.
- Body
Rule
Group Body Inspect the request body as plain text. The request body immediately follows the request headers. This is the part of a request that contains any additional data that you want to send to your web server as the HTTP request body, such as data from a form.
AWS WAF does not support inspecting the entire contents of the web request body if the body exceeds the limit for the resource type. When a web request body is larger than the limit, the underlying host service only forwards the contents that are within the limit to AWS WAF for inspection.
- For Application Load Balancer and AWS AppSync , the limit is fixed at 8 KB (8,192 bytes).
- For CloudFront, API Gateway, Amazon Cognito, App Runner, and Verified Access, the default limit is 16 KB (16,384 bytes), and you can increase the limit for each resource type in the web ACL
AssociationConfig
, for additional processing fees.
For information about how to handle oversized request bodies, see the
Body
object configuration.- Rule
Group Cookies Inspect the request cookies. You must configure scope and pattern matching filters in the
Cookies
object, to define the set of cookies and the parts of the cookies that AWS WAF inspects.Only the first 8 KB (8192 bytes) of a request's cookies and only the first 200 cookies are forwarded to AWS WAF for inspection by the underlying host service. You must configure how to handle any oversize cookie content in the
Cookies
object. AWS WAF applies the pattern matching filters to the cookies that it receives from the underlying host service.- Headers
Rule
Group Headers Inspect the request headers. You must configure scope and pattern matching filters in the
Headers
object, to define the set of headers to and the parts of the headers that AWS WAF inspects.Only the first 8 KB (8192 bytes) of a request's headers and only the first 200 headers are forwarded to AWS WAF for inspection by the underlying host service. You must configure how to handle any oversize header content in the
Headers
object. AWS WAF applies the pattern matching filters to the headers that it receives from the underlying host service.- Ja3Fingerprint
Rule
Group Ja3Fingerprint Available for use with Amazon CloudFront distributions and Application Load Balancers. Match against the request's JA3 fingerprint. The JA3 fingerprint is a 32-character hash derived from the TLS Client Hello of an incoming request. This fingerprint serves as a unique identifier for the client's TLS configuration. AWS WAF calculates and logs this fingerprint for each request that has enough TLS Client Hello information for the calculation. Almost all web requests include this information.
You can use this choice only with a string match
ByteMatchStatement
with thePositionalConstraint
set toEXACTLY
.You can obtain the JA3 fingerprint for client requests from the web ACL logs. If AWS WAF is able to calculate the fingerprint, it includes it in the logs. For information about the logging fields, see Log fields in the AWS WAF Developer Guide .
Provide the JA3 fingerprint string from the logs in your string match statement specification, to match with any future requests that have the same TLS configuration.
- Json
Body RuleGroup Json Body Inspect the request body as JSON. The request body immediately follows the request headers. This is the part of a request that contains any additional data that you want to send to your web server as the HTTP request body, such as data from a form.
AWS WAF does not support inspecting the entire contents of the web request body if the body exceeds the limit for the resource type. When a web request body is larger than the limit, the underlying host service only forwards the contents that are within the limit to AWS WAF for inspection.
- For Application Load Balancer and AWS AppSync , the limit is fixed at 8 KB (8,192 bytes).
- For CloudFront, API Gateway, Amazon Cognito, App Runner, and Verified Access, the default limit is 16 KB (16,384 bytes), and you can increase the limit for each resource type in the web ACL
AssociationConfig
, for additional processing fees.
For information about how to handle oversized request bodies, see the
JsonBody
object configuration.- Method interface{}
- The HTTP method of a web request. The method indicates the type of operation that the request is asking the origin to perform.
- Query
String interface{} - The query string of a web request. This is the part of a URL that appears after a ? character, if any.
- Single
Header RuleGroup Field To Match Single Header Properties Inspect a single header. Provide the name of the header to inspect, for example,
User-Agent
orReferer
. This setting isn't case sensitive.Example JSON:
"SingleHeader": { "Name": "haystack" }
Alternately, you can filter and inspect all headers with the
Headers
FieldToMatch
setting.- Single
Query RuleArgument Group Field To Match Single Query Argument Properties - One query argument in a web request, identified by name, for example UserName or SalesRegion. The name can be up to 30 characters long and isn't case sensitive.
- Uri
Path interface{} - The path component of the URI of a web request. This is the part of a web request that identifies a resource, for example, /images/daily-ad.jpg.
- all
Query ObjectArguments - All query arguments of a web request.
- body
Rule
Group Body Inspect the request body as plain text. The request body immediately follows the request headers. This is the part of a request that contains any additional data that you want to send to your web server as the HTTP request body, such as data from a form.
AWS WAF does not support inspecting the entire contents of the web request body if the body exceeds the limit for the resource type. When a web request body is larger than the limit, the underlying host service only forwards the contents that are within the limit to AWS WAF for inspection.
- For Application Load Balancer and AWS AppSync , the limit is fixed at 8 KB (8,192 bytes).
- For CloudFront, API Gateway, Amazon Cognito, App Runner, and Verified Access, the default limit is 16 KB (16,384 bytes), and you can increase the limit for each resource type in the web ACL
AssociationConfig
, for additional processing fees.
For information about how to handle oversized request bodies, see the
Body
object configuration.- Rule
Group Cookies Inspect the request cookies. You must configure scope and pattern matching filters in the
Cookies
object, to define the set of cookies and the parts of the cookies that AWS WAF inspects.Only the first 8 KB (8192 bytes) of a request's cookies and only the first 200 cookies are forwarded to AWS WAF for inspection by the underlying host service. You must configure how to handle any oversize cookie content in the
Cookies
object. AWS WAF applies the pattern matching filters to the cookies that it receives from the underlying host service.- headers
Rule
Group Headers Inspect the request headers. You must configure scope and pattern matching filters in the
Headers
object, to define the set of headers to and the parts of the headers that AWS WAF inspects.Only the first 8 KB (8192 bytes) of a request's headers and only the first 200 headers are forwarded to AWS WAF for inspection by the underlying host service. You must configure how to handle any oversize header content in the
Headers
object. AWS WAF applies the pattern matching filters to the headers that it receives from the underlying host service.- ja3Fingerprint
Rule
Group Ja3Fingerprint Available for use with Amazon CloudFront distributions and Application Load Balancers. Match against the request's JA3 fingerprint. The JA3 fingerprint is a 32-character hash derived from the TLS Client Hello of an incoming request. This fingerprint serves as a unique identifier for the client's TLS configuration. AWS WAF calculates and logs this fingerprint for each request that has enough TLS Client Hello information for the calculation. Almost all web requests include this information.
You can use this choice only with a string match
ByteMatchStatement
with thePositionalConstraint
set toEXACTLY
.You can obtain the JA3 fingerprint for client requests from the web ACL logs. If AWS WAF is able to calculate the fingerprint, it includes it in the logs. For information about the logging fields, see Log fields in the AWS WAF Developer Guide .
Provide the JA3 fingerprint string from the logs in your string match statement specification, to match with any future requests that have the same TLS configuration.
- json
Body RuleGroup Json Body Inspect the request body as JSON. The request body immediately follows the request headers. This is the part of a request that contains any additional data that you want to send to your web server as the HTTP request body, such as data from a form.
AWS WAF does not support inspecting the entire contents of the web request body if the body exceeds the limit for the resource type. When a web request body is larger than the limit, the underlying host service only forwards the contents that are within the limit to AWS WAF for inspection.
- For Application Load Balancer and AWS AppSync , the limit is fixed at 8 KB (8,192 bytes).
- For CloudFront, API Gateway, Amazon Cognito, App Runner, and Verified Access, the default limit is 16 KB (16,384 bytes), and you can increase the limit for each resource type in the web ACL
AssociationConfig
, for additional processing fees.
For information about how to handle oversized request bodies, see the
JsonBody
object configuration.- method Object
- The HTTP method of a web request. The method indicates the type of operation that the request is asking the origin to perform.
- query
String Object - The query string of a web request. This is the part of a URL that appears after a ? character, if any.
- single
Header RuleGroup Field To Match Single Header Properties Inspect a single header. Provide the name of the header to inspect, for example,
User-Agent
orReferer
. This setting isn't case sensitive.Example JSON:
"SingleHeader": { "Name": "haystack" }
Alternately, you can filter and inspect all headers with the
Headers
FieldToMatch
setting.- single
Query RuleArgument Group Field To Match Single Query Argument Properties - One query argument in a web request, identified by name, for example UserName or SalesRegion. The name can be up to 30 characters long and isn't case sensitive.
- uri
Path Object - The path component of the URI of a web request. This is the part of a web request that identifies a resource, for example, /images/daily-ad.jpg.
- all
Query anyArguments - All query arguments of a web request.
- body
Rule
Group Body Inspect the request body as plain text. The request body immediately follows the request headers. This is the part of a request that contains any additional data that you want to send to your web server as the HTTP request body, such as data from a form.
AWS WAF does not support inspecting the entire contents of the web request body if the body exceeds the limit for the resource type. When a web request body is larger than the limit, the underlying host service only forwards the contents that are within the limit to AWS WAF for inspection.
- For Application Load Balancer and AWS AppSync , the limit is fixed at 8 KB (8,192 bytes).
- For CloudFront, API Gateway, Amazon Cognito, App Runner, and Verified Access, the default limit is 16 KB (16,384 bytes), and you can increase the limit for each resource type in the web ACL
AssociationConfig
, for additional processing fees.
For information about how to handle oversized request bodies, see the
Body
object configuration.- Rule
Group Cookies Inspect the request cookies. You must configure scope and pattern matching filters in the
Cookies
object, to define the set of cookies and the parts of the cookies that AWS WAF inspects.Only the first 8 KB (8192 bytes) of a request's cookies and only the first 200 cookies are forwarded to AWS WAF for inspection by the underlying host service. You must configure how to handle any oversize cookie content in the
Cookies
object. AWS WAF applies the pattern matching filters to the cookies that it receives from the underlying host service.- headers
Rule
Group Headers Inspect the request headers. You must configure scope and pattern matching filters in the
Headers
object, to define the set of headers to and the parts of the headers that AWS WAF inspects.Only the first 8 KB (8192 bytes) of a request's headers and only the first 200 headers are forwarded to AWS WAF for inspection by the underlying host service. You must configure how to handle any oversize header content in the
Headers
object. AWS WAF applies the pattern matching filters to the headers that it receives from the underlying host service.- ja3Fingerprint
Rule
Group Ja3Fingerprint Available for use with Amazon CloudFront distributions and Application Load Balancers. Match against the request's JA3 fingerprint. The JA3 fingerprint is a 32-character hash derived from the TLS Client Hello of an incoming request. This fingerprint serves as a unique identifier for the client's TLS configuration. AWS WAF calculates and logs this fingerprint for each request that has enough TLS Client Hello information for the calculation. Almost all web requests include this information.
You can use this choice only with a string match
ByteMatchStatement
with thePositionalConstraint
set toEXACTLY
.You can obtain the JA3 fingerprint for client requests from the web ACL logs. If AWS WAF is able to calculate the fingerprint, it includes it in the logs. For information about the logging fields, see Log fields in the AWS WAF Developer Guide .
Provide the JA3 fingerprint string from the logs in your string match statement specification, to match with any future requests that have the same TLS configuration.
- json
Body RuleGroup Json Body Inspect the request body as JSON. The request body immediately follows the request headers. This is the part of a request that contains any additional data that you want to send to your web server as the HTTP request body, such as data from a form.
AWS WAF does not support inspecting the entire contents of the web request body if the body exceeds the limit for the resource type. When a web request body is larger than the limit, the underlying host service only forwards the contents that are within the limit to AWS WAF for inspection.
- For Application Load Balancer and AWS AppSync , the limit is fixed at 8 KB (8,192 bytes).
- For CloudFront, API Gateway, Amazon Cognito, App Runner, and Verified Access, the default limit is 16 KB (16,384 bytes), and you can increase the limit for each resource type in the web ACL
AssociationConfig
, for additional processing fees.
For information about how to handle oversized request bodies, see the
JsonBody
object configuration.- method any
- The HTTP method of a web request. The method indicates the type of operation that the request is asking the origin to perform.
- query
String any - The query string of a web request. This is the part of a URL that appears after a ? character, if any.
- single
Header RuleGroup Field To Match Single Header Properties Inspect a single header. Provide the name of the header to inspect, for example,
User-Agent
orReferer
. This setting isn't case sensitive.Example JSON:
"SingleHeader": { "Name": "haystack" }
Alternately, you can filter and inspect all headers with the
Headers
FieldToMatch
setting.- single
Query RuleArgument Group Field To Match Single Query Argument Properties - One query argument in a web request, identified by name, for example UserName or SalesRegion. The name can be up to 30 characters long and isn't case sensitive.
- uri
Path any - The path component of the URI of a web request. This is the part of a web request that identifies a resource, for example, /images/daily-ad.jpg.
- all_
query_ Anyarguments - All query arguments of a web request.
- body
Rule
Group Body Inspect the request body as plain text. The request body immediately follows the request headers. This is the part of a request that contains any additional data that you want to send to your web server as the HTTP request body, such as data from a form.
AWS WAF does not support inspecting the entire contents of the web request body if the body exceeds the limit for the resource type. When a web request body is larger than the limit, the underlying host service only forwards the contents that are within the limit to AWS WAF for inspection.
- For Application Load Balancer and AWS AppSync , the limit is fixed at 8 KB (8,192 bytes).
- For CloudFront, API Gateway, Amazon Cognito, App Runner, and Verified Access, the default limit is 16 KB (16,384 bytes), and you can increase the limit for each resource type in the web ACL
AssociationConfig
, for additional processing fees.
For information about how to handle oversized request bodies, see the
Body
object configuration.- Rule
Group Cookies Inspect the request cookies. You must configure scope and pattern matching filters in the
Cookies
object, to define the set of cookies and the parts of the cookies that AWS WAF inspects.Only the first 8 KB (8192 bytes) of a request's cookies and only the first 200 cookies are forwarded to AWS WAF for inspection by the underlying host service. You must configure how to handle any oversize cookie content in the
Cookies
object. AWS WAF applies the pattern matching filters to the cookies that it receives from the underlying host service.- headers
Rule
Group Headers Inspect the request headers. You must configure scope and pattern matching filters in the
Headers
object, to define the set of headers to and the parts of the headers that AWS WAF inspects.Only the first 8 KB (8192 bytes) of a request's headers and only the first 200 headers are forwarded to AWS WAF for inspection by the underlying host service. You must configure how to handle any oversize header content in the
Headers
object. AWS WAF applies the pattern matching filters to the headers that it receives from the underlying host service.- ja3_
fingerprint RuleGroup Ja3Fingerprint Available for use with Amazon CloudFront distributions and Application Load Balancers. Match against the request's JA3 fingerprint. The JA3 fingerprint is a 32-character hash derived from the TLS Client Hello of an incoming request. This fingerprint serves as a unique identifier for the client's TLS configuration. AWS WAF calculates and logs this fingerprint for each request that has enough TLS Client Hello information for the calculation. Almost all web requests include this information.
You can use this choice only with a string match
ByteMatchStatement
with thePositionalConstraint
set toEXACTLY
.You can obtain the JA3 fingerprint for client requests from the web ACL logs. If AWS WAF is able to calculate the fingerprint, it includes it in the logs. For information about the logging fields, see Log fields in the AWS WAF Developer Guide .
Provide the JA3 fingerprint string from the logs in your string match statement specification, to match with any future requests that have the same TLS configuration.
- json_
body RuleGroup Json Body Inspect the request body as JSON. The request body immediately follows the request headers. This is the part of a request that contains any additional data that you want to send to your web server as the HTTP request body, such as data from a form.
AWS WAF does not support inspecting the entire contents of the web request body if the body exceeds the limit for the resource type. When a web request body is larger than the limit, the underlying host service only forwards the contents that are within the limit to AWS WAF for inspection.
- For Application Load Balancer and AWS AppSync , the limit is fixed at 8 KB (8,192 bytes).
- For CloudFront, API Gateway, Amazon Cognito, App Runner, and Verified Access, the default limit is 16 KB (16,384 bytes), and you can increase the limit for each resource type in the web ACL
AssociationConfig
, for additional processing fees.
For information about how to handle oversized request bodies, see the
JsonBody
object configuration.- method Any
- The HTTP method of a web request. The method indicates the type of operation that the request is asking the origin to perform.
- query_
string Any - The query string of a web request. This is the part of a URL that appears after a ? character, if any.
- single_
header RuleGroup Field To Match Single Header Properties Inspect a single header. Provide the name of the header to inspect, for example,
User-Agent
orReferer
. This setting isn't case sensitive.Example JSON:
"SingleHeader": { "Name": "haystack" }
Alternately, you can filter and inspect all headers with the
Headers
FieldToMatch
setting.- single_
query_ Ruleargument Group Field To Match Single Query Argument Properties - One query argument in a web request, identified by name, for example UserName or SalesRegion. The name can be up to 30 characters long and isn't case sensitive.
- uri_
path Any - The path component of the URI of a web request. This is the part of a web request that identifies a resource, for example, /images/daily-ad.jpg.
- all
Query AnyArguments - All query arguments of a web request.
- body Property Map
Inspect the request body as plain text. The request body immediately follows the request headers. This is the part of a request that contains any additional data that you want to send to your web server as the HTTP request body, such as data from a form.
AWS WAF does not support inspecting the entire contents of the web request body if the body exceeds the limit for the resource type. When a web request body is larger than the limit, the underlying host service only forwards the contents that are within the limit to AWS WAF for inspection.
- For Application Load Balancer and AWS AppSync , the limit is fixed at 8 KB (8,192 bytes).
- For CloudFront, API Gateway, Amazon Cognito, App Runner, and Verified Access, the default limit is 16 KB (16,384 bytes), and you can increase the limit for each resource type in the web ACL
AssociationConfig
, for additional processing fees.
For information about how to handle oversized request bodies, see the
Body
object configuration.- Property Map
Inspect the request cookies. You must configure scope and pattern matching filters in the
Cookies
object, to define the set of cookies and the parts of the cookies that AWS WAF inspects.Only the first 8 KB (8192 bytes) of a request's cookies and only the first 200 cookies are forwarded to AWS WAF for inspection by the underlying host service. You must configure how to handle any oversize cookie content in the
Cookies
object. AWS WAF applies the pattern matching filters to the cookies that it receives from the underlying host service.- headers Property Map
Inspect the request headers. You must configure scope and pattern matching filters in the
Headers
object, to define the set of headers to and the parts of the headers that AWS WAF inspects.Only the first 8 KB (8192 bytes) of a request's headers and only the first 200 headers are forwarded to AWS WAF for inspection by the underlying host service. You must configure how to handle any oversize header content in the
Headers
object. AWS WAF applies the pattern matching filters to the headers that it receives from the underlying host service.- ja3Fingerprint Property Map
Available for use with Amazon CloudFront distributions and Application Load Balancers. Match against the request's JA3 fingerprint. The JA3 fingerprint is a 32-character hash derived from the TLS Client Hello of an incoming request. This fingerprint serves as a unique identifier for the client's TLS configuration. AWS WAF calculates and logs this fingerprint for each request that has enough TLS Client Hello information for the calculation. Almost all web requests include this information.
You can use this choice only with a string match
ByteMatchStatement
with thePositionalConstraint
set toEXACTLY
.You can obtain the JA3 fingerprint for client requests from the web ACL logs. If AWS WAF is able to calculate the fingerprint, it includes it in the logs. For information about the logging fields, see Log fields in the AWS WAF Developer Guide .
Provide the JA3 fingerprint string from the logs in your string match statement specification, to match with any future requests that have the same TLS configuration.
- json
Body Property Map Inspect the request body as JSON. The request body immediately follows the request headers. This is the part of a request that contains any additional data that you want to send to your web server as the HTTP request body, such as data from a form.
AWS WAF does not support inspecting the entire contents of the web request body if the body exceeds the limit for the resource type. When a web request body is larger than the limit, the underlying host service only forwards the contents that are within the limit to AWS WAF for inspection.
- For Application Load Balancer and AWS AppSync , the limit is fixed at 8 KB (8,192 bytes).
- For CloudFront, API Gateway, Amazon Cognito, App Runner, and Verified Access, the default limit is 16 KB (16,384 bytes), and you can increase the limit for each resource type in the web ACL
AssociationConfig
, for additional processing fees.
For information about how to handle oversized request bodies, see the
JsonBody
object configuration.- method Any
- The HTTP method of a web request. The method indicates the type of operation that the request is asking the origin to perform.
- query
String Any - The query string of a web request. This is the part of a URL that appears after a ? character, if any.
- single
Header Property Map Inspect a single header. Provide the name of the header to inspect, for example,
User-Agent
orReferer
. This setting isn't case sensitive.Example JSON:
"SingleHeader": { "Name": "haystack" }
Alternately, you can filter and inspect all headers with the
Headers
FieldToMatch
setting.- single
Query Property MapArgument - One query argument in a web request, identified by name, for example UserName or SalesRegion. The name can be up to 30 characters long and isn't case sensitive.
- uri
Path Any - The path component of the URI of a web request. This is the part of a web request that identifies a resource, for example, /images/daily-ad.jpg.
RuleGroupFieldToMatchSingleHeaderProperties
- Name string
- Name string
- name String
- name string
- name str
- name String
RuleGroupFieldToMatchSingleQueryArgumentProperties
- Name string
- Name string
- name String
- name string
- name str
- name String
RuleGroupForwardedIpConfiguration
- Fallback
Behavior Pulumi.Aws Native. Wa Fv2. Rule Group Forwarded Ip Configuration Fallback Behavior The match status to assign to the web request if the request doesn't have a valid IP address in the specified position.
If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web request at all.
You can specify the following fallback behaviors:
MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
- Header
Name string The name of the HTTP header to use for the IP address. For example, to use the X-Forwarded-For (XFF) header, set this to
X-Forwarded-For
.If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web request at all.
- Fallback
Behavior RuleGroup Forwarded Ip Configuration Fallback Behavior The match status to assign to the web request if the request doesn't have a valid IP address in the specified position.
If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web request at all.
You can specify the following fallback behaviors:
MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
- Header
Name string The name of the HTTP header to use for the IP address. For example, to use the X-Forwarded-For (XFF) header, set this to
X-Forwarded-For
.If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web request at all.
- fallback
Behavior RuleGroup Forwarded Ip Configuration Fallback Behavior The match status to assign to the web request if the request doesn't have a valid IP address in the specified position.
If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web request at all.
You can specify the following fallback behaviors:
MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
- header
Name String The name of the HTTP header to use for the IP address. For example, to use the X-Forwarded-For (XFF) header, set this to
X-Forwarded-For
.If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web request at all.
- fallback
Behavior RuleGroup Forwarded Ip Configuration Fallback Behavior The match status to assign to the web request if the request doesn't have a valid IP address in the specified position.
If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web request at all.
You can specify the following fallback behaviors:
MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
- header
Name string The name of the HTTP header to use for the IP address. For example, to use the X-Forwarded-For (XFF) header, set this to
X-Forwarded-For
.If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web request at all.
- fallback_
behavior RuleGroup Forwarded Ip Configuration Fallback Behavior The match status to assign to the web request if the request doesn't have a valid IP address in the specified position.
If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web request at all.
You can specify the following fallback behaviors:
MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
- header_
name str The name of the HTTP header to use for the IP address. For example, to use the X-Forwarded-For (XFF) header, set this to
X-Forwarded-For
.If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web request at all.
- fallback
Behavior "MATCH" | "NO_MATCH" The match status to assign to the web request if the request doesn't have a valid IP address in the specified position.
If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web request at all.
You can specify the following fallback behaviors:
MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
- header
Name String The name of the HTTP header to use for the IP address. For example, to use the X-Forwarded-For (XFF) header, set this to
X-Forwarded-For
.If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web request at all.
RuleGroupForwardedIpConfigurationFallbackBehavior
RuleGroupGeoMatchStatement
- Country
Codes List<string> An array of two-character country codes that you want to match against, for example,
[ "US", "CN" ]
, from the alpha-2 country ISO codes of the ISO 3166 international standard.When you use a geo match statement just for the region and country labels that it adds to requests, you still have to supply a country code for the rule to evaluate. In this case, you configure the rule to only count matching requests, but it will still generate logging and count metrics for any matches. You can reduce the logging and metrics that the rule produces by specifying a country that's unlikely to be a source of traffic to your site.
- Forwarded
Ip Pulumi.Config Aws Native. Wa Fv2. Inputs. Rule Group Forwarded Ip Configuration The configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. Commonly, this is the X-Forwarded-For (XFF) header, but you can specify any header name.
If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web request at all.
- Country
Codes []string An array of two-character country codes that you want to match against, for example,
[ "US", "CN" ]
, from the alpha-2 country ISO codes of the ISO 3166 international standard.When you use a geo match statement just for the region and country labels that it adds to requests, you still have to supply a country code for the rule to evaluate. In this case, you configure the rule to only count matching requests, but it will still generate logging and count metrics for any matches. You can reduce the logging and metrics that the rule produces by specifying a country that's unlikely to be a source of traffic to your site.
- Forwarded
Ip RuleConfig Group Forwarded Ip Configuration The configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. Commonly, this is the X-Forwarded-For (XFF) header, but you can specify any header name.
If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web request at all.
- country
Codes List<String> An array of two-character country codes that you want to match against, for example,
[ "US", "CN" ]
, from the alpha-2 country ISO codes of the ISO 3166 international standard.When you use a geo match statement just for the region and country labels that it adds to requests, you still have to supply a country code for the rule to evaluate. In this case, you configure the rule to only count matching requests, but it will still generate logging and count metrics for any matches. You can reduce the logging and metrics that the rule produces by specifying a country that's unlikely to be a source of traffic to your site.
- forwarded
Ip RuleConfig Group Forwarded Ip Configuration The configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. Commonly, this is the X-Forwarded-For (XFF) header, but you can specify any header name.
If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web request at all.
- country
Codes string[] An array of two-character country codes that you want to match against, for example,
[ "US", "CN" ]
, from the alpha-2 country ISO codes of the ISO 3166 international standard.When you use a geo match statement just for the region and country labels that it adds to requests, you still have to supply a country code for the rule to evaluate. In this case, you configure the rule to only count matching requests, but it will still generate logging and count metrics for any matches. You can reduce the logging and metrics that the rule produces by specifying a country that's unlikely to be a source of traffic to your site.
- forwarded
Ip RuleConfig Group Forwarded Ip Configuration The configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. Commonly, this is the X-Forwarded-For (XFF) header, but you can specify any header name.
If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web request at all.
- country_
codes Sequence[str] An array of two-character country codes that you want to match against, for example,
[ "US", "CN" ]
, from the alpha-2 country ISO codes of the ISO 3166 international standard.When you use a geo match statement just for the region and country labels that it adds to requests, you still have to supply a country code for the rule to evaluate. In this case, you configure the rule to only count matching requests, but it will still generate logging and count metrics for any matches. You can reduce the logging and metrics that the rule produces by specifying a country that's unlikely to be a source of traffic to your site.
- forwarded_
ip_ Ruleconfig Group Forwarded Ip Configuration The configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. Commonly, this is the X-Forwarded-For (XFF) header, but you can specify any header name.
If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web request at all.
- country
Codes List<String> An array of two-character country codes that you want to match against, for example,
[ "US", "CN" ]
, from the alpha-2 country ISO codes of the ISO 3166 international standard.When you use a geo match statement just for the region and country labels that it adds to requests, you still have to supply a country code for the rule to evaluate. In this case, you configure the rule to only count matching requests, but it will still generate logging and count metrics for any matches. You can reduce the logging and metrics that the rule produces by specifying a country that's unlikely to be a source of traffic to your site.
- forwarded
Ip Property MapConfig The configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. Commonly, this is the X-Forwarded-For (XFF) header, but you can specify any header name.
If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web request at all.
RuleGroupHeaderMatchPattern
- All object
- Inspect all parts of the web request headers.
- Excluded
Headers List<string> - Inspect only the headers whose keys don't match any of the strings specified here.
- Included
Headers List<string> - Inspect only the headers that have a key that matches one of the strings specified here.
- All interface{}
- Inspect all parts of the web request headers.
- Excluded
Headers []string - Inspect only the headers whose keys don't match any of the strings specified here.
- Included
Headers []string - Inspect only the headers that have a key that matches one of the strings specified here.
- all Object
- Inspect all parts of the web request headers.
- excluded
Headers List<String> - Inspect only the headers whose keys don't match any of the strings specified here.
- included
Headers List<String> - Inspect only the headers that have a key that matches one of the strings specified here.
- all any
- Inspect all parts of the web request headers.
- excluded
Headers string[] - Inspect only the headers whose keys don't match any of the strings specified here.
- included
Headers string[] - Inspect only the headers that have a key that matches one of the strings specified here.
- all Any
- Inspect all parts of the web request headers.
- excluded_
headers Sequence[str] - Inspect only the headers whose keys don't match any of the strings specified here.
- included_
headers Sequence[str] - Inspect only the headers that have a key that matches one of the strings specified here.
- all Any
- Inspect all parts of the web request headers.
- excluded
Headers List<String> - Inspect only the headers whose keys don't match any of the strings specified here.
- included
Headers List<String> - Inspect only the headers that have a key that matches one of the strings specified here.
RuleGroupHeaders
- Match
Pattern Pulumi.Aws Native. Wa Fv2. Inputs. Rule Group Header Match Pattern The filter to use to identify the subset of headers to inspect in a web request.
You must specify exactly one setting: either
All
,IncludedHeaders
, orExcludedHeaders
.Example JSON:
"MatchPattern": { "ExcludedHeaders": [ "KeyToExclude1", "KeyToExclude2" ] }
- Match
Scope Pulumi.Aws Native. Wa Fv2. Rule Group Map Match Scope The parts of the headers to match with the rule inspection criteria. If you specify
ALL
, AWS WAF inspects both keys and values.All
does not require a match to be found in the keys and a match to be found in the values. It requires a match to be found in the keys or the values or both. To require a match in the keys and in the values, use a logicalAND
statement to combine two match rules, one that inspects the keys and another that inspects the values.- Oversize
Handling Pulumi.Aws Native. Wa Fv2. Rule Group Oversize Handling What AWS WAF should do if the headers of the request are more numerous or larger than AWS WAF can inspect. AWS WAF does not support inspecting the entire contents of request headers when they exceed 8 KB (8192 bytes) or 200 total headers. The underlying host service forwards a maximum of 200 headers and at most 8 KB of header contents to AWS WAF .
The options for oversize handling are the following:
CONTINUE
- Inspect the available headers normally, according to the rule inspection criteria.MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
- Match
Pattern RuleGroup Header Match Pattern The filter to use to identify the subset of headers to inspect in a web request.
You must specify exactly one setting: either
All
,IncludedHeaders
, orExcludedHeaders
.Example JSON:
"MatchPattern": { "ExcludedHeaders": [ "KeyToExclude1", "KeyToExclude2" ] }
- Match
Scope RuleGroup Map Match Scope The parts of the headers to match with the rule inspection criteria. If you specify
ALL
, AWS WAF inspects both keys and values.All
does not require a match to be found in the keys and a match to be found in the values. It requires a match to be found in the keys or the values or both. To require a match in the keys and in the values, use a logicalAND
statement to combine two match rules, one that inspects the keys and another that inspects the values.- Oversize
Handling RuleGroup Oversize Handling What AWS WAF should do if the headers of the request are more numerous or larger than AWS WAF can inspect. AWS WAF does not support inspecting the entire contents of request headers when they exceed 8 KB (8192 bytes) or 200 total headers. The underlying host service forwards a maximum of 200 headers and at most 8 KB of header contents to AWS WAF .
The options for oversize handling are the following:
CONTINUE
- Inspect the available headers normally, according to the rule inspection criteria.MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
- match
Pattern RuleGroup Header Match Pattern The filter to use to identify the subset of headers to inspect in a web request.
You must specify exactly one setting: either
All
,IncludedHeaders
, orExcludedHeaders
.Example JSON:
"MatchPattern": { "ExcludedHeaders": [ "KeyToExclude1", "KeyToExclude2" ] }
- match
Scope RuleGroup Map Match Scope The parts of the headers to match with the rule inspection criteria. If you specify
ALL
, AWS WAF inspects both keys and values.All
does not require a match to be found in the keys and a match to be found in the values. It requires a match to be found in the keys or the values or both. To require a match in the keys and in the values, use a logicalAND
statement to combine two match rules, one that inspects the keys and another that inspects the values.- oversize
Handling RuleGroup Oversize Handling What AWS WAF should do if the headers of the request are more numerous or larger than AWS WAF can inspect. AWS WAF does not support inspecting the entire contents of request headers when they exceed 8 KB (8192 bytes) or 200 total headers. The underlying host service forwards a maximum of 200 headers and at most 8 KB of header contents to AWS WAF .
The options for oversize handling are the following:
CONTINUE
- Inspect the available headers normally, according to the rule inspection criteria.MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
- match
Pattern RuleGroup Header Match Pattern The filter to use to identify the subset of headers to inspect in a web request.
You must specify exactly one setting: either
All
,IncludedHeaders
, orExcludedHeaders
.Example JSON:
"MatchPattern": { "ExcludedHeaders": [ "KeyToExclude1", "KeyToExclude2" ] }
- match
Scope RuleGroup Map Match Scope The parts of the headers to match with the rule inspection criteria. If you specify
ALL
, AWS WAF inspects both keys and values.All
does not require a match to be found in the keys and a match to be found in the values. It requires a match to be found in the keys or the values or both. To require a match in the keys and in the values, use a logicalAND
statement to combine two match rules, one that inspects the keys and another that inspects the values.- oversize
Handling RuleGroup Oversize Handling What AWS WAF should do if the headers of the request are more numerous or larger than AWS WAF can inspect. AWS WAF does not support inspecting the entire contents of request headers when they exceed 8 KB (8192 bytes) or 200 total headers. The underlying host service forwards a maximum of 200 headers and at most 8 KB of header contents to AWS WAF .
The options for oversize handling are the following:
CONTINUE
- Inspect the available headers normally, according to the rule inspection criteria.MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
- match_
pattern RuleGroup Header Match Pattern The filter to use to identify the subset of headers to inspect in a web request.
You must specify exactly one setting: either
All
,IncludedHeaders
, orExcludedHeaders
.Example JSON:
"MatchPattern": { "ExcludedHeaders": [ "KeyToExclude1", "KeyToExclude2" ] }
- match_
scope RuleGroup Map Match Scope The parts of the headers to match with the rule inspection criteria. If you specify
ALL
, AWS WAF inspects both keys and values.All
does not require a match to be found in the keys and a match to be found in the values. It requires a match to be found in the keys or the values or both. To require a match in the keys and in the values, use a logicalAND
statement to combine two match rules, one that inspects the keys and another that inspects the values.- oversize_
handling RuleGroup Oversize Handling What AWS WAF should do if the headers of the request are more numerous or larger than AWS WAF can inspect. AWS WAF does not support inspecting the entire contents of request headers when they exceed 8 KB (8192 bytes) or 200 total headers. The underlying host service forwards a maximum of 200 headers and at most 8 KB of header contents to AWS WAF .
The options for oversize handling are the following:
CONTINUE
- Inspect the available headers normally, according to the rule inspection criteria.MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
- match
Pattern Property Map The filter to use to identify the subset of headers to inspect in a web request.
You must specify exactly one setting: either
All
,IncludedHeaders
, orExcludedHeaders
.Example JSON:
"MatchPattern": { "ExcludedHeaders": [ "KeyToExclude1", "KeyToExclude2" ] }
- match
Scope "ALL" | "KEY" | "VALUE" The parts of the headers to match with the rule inspection criteria. If you specify
ALL
, AWS WAF inspects both keys and values.All
does not require a match to be found in the keys and a match to be found in the values. It requires a match to be found in the keys or the values or both. To require a match in the keys and in the values, use a logicalAND
statement to combine two match rules, one that inspects the keys and another that inspects the values.- oversize
Handling "CONTINUE" | "MATCH" | "NO_MATCH" What AWS WAF should do if the headers of the request are more numerous or larger than AWS WAF can inspect. AWS WAF does not support inspecting the entire contents of request headers when they exceed 8 KB (8192 bytes) or 200 total headers. The underlying host service forwards a maximum of 200 headers and at most 8 KB of header contents to AWS WAF .
The options for oversize handling are the following:
CONTINUE
- Inspect the available headers normally, according to the rule inspection criteria.MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
RuleGroupImmunityTimeProperty
- Immunity
Time int The amount of time, in seconds, that a
CAPTCHA
or challenge timestamp is considered valid by AWS WAF . The default setting is 300.For the Challenge action, the minimum setting is 300.
- Immunity
Time int The amount of time, in seconds, that a
CAPTCHA
or challenge timestamp is considered valid by AWS WAF . The default setting is 300.For the Challenge action, the minimum setting is 300.
- immunity
Time Integer The amount of time, in seconds, that a
CAPTCHA
or challenge timestamp is considered valid by AWS WAF . The default setting is 300.For the Challenge action, the minimum setting is 300.
- immunity
Time number The amount of time, in seconds, that a
CAPTCHA
or challenge timestamp is considered valid by AWS WAF . The default setting is 300.For the Challenge action, the minimum setting is 300.
- immunity_
time int The amount of time, in seconds, that a
CAPTCHA
or challenge timestamp is considered valid by AWS WAF . The default setting is 300.For the Challenge action, the minimum setting is 300.
- immunity
Time Number The amount of time, in seconds, that a
CAPTCHA
or challenge timestamp is considered valid by AWS WAF . The default setting is 300.For the Challenge action, the minimum setting is 300.
RuleGroupIpSetForwardedIpConfiguration
- Fallback
Behavior Pulumi.Aws Native. Wa Fv2. Rule Group Ip Set Forwarded Ip Configuration Fallback Behavior The match status to assign to the web request if the request doesn't have a valid IP address in the specified position.
If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web request at all.
You can specify the following fallback behaviors:
MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
- Header
Name string The name of the HTTP header to use for the IP address. For example, to use the X-Forwarded-For (XFF) header, set this to
X-Forwarded-For
.If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web request at all.
- Position
Pulumi.
Aws Native. Wa Fv2. Rule Group Ip Set Forwarded Ip Configuration Position The position in the header to search for the IP address. The header can contain IP addresses of the original client and also of proxies. For example, the header value could be
10.1.1.1, 127.0.0.0, 10.10.10.10
where the first IP address identifies the original client and the rest identify proxies that the request went through.The options for this setting are the following:
- FIRST - Inspect the first IP address in the list of IP addresses in the header. This is usually the client's original IP.
- LAST - Inspect the last IP address in the list of IP addresses in the header.
- ANY - Inspect all IP addresses in the header for a match. If the header contains more than 10 IP addresses, AWS WAF inspects the last 10.
- Fallback
Behavior RuleGroup Ip Set Forwarded Ip Configuration Fallback Behavior The match status to assign to the web request if the request doesn't have a valid IP address in the specified position.
If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web request at all.
You can specify the following fallback behaviors:
MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
- Header
Name string The name of the HTTP header to use for the IP address. For example, to use the X-Forwarded-For (XFF) header, set this to
X-Forwarded-For
.If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web request at all.
- Position
Rule
Group Ip Set Forwarded Ip Configuration Position The position in the header to search for the IP address. The header can contain IP addresses of the original client and also of proxies. For example, the header value could be
10.1.1.1, 127.0.0.0, 10.10.10.10
where the first IP address identifies the original client and the rest identify proxies that the request went through.The options for this setting are the following:
- FIRST - Inspect the first IP address in the list of IP addresses in the header. This is usually the client's original IP.
- LAST - Inspect the last IP address in the list of IP addresses in the header.
- ANY - Inspect all IP addresses in the header for a match. If the header contains more than 10 IP addresses, AWS WAF inspects the last 10.
- fallback
Behavior RuleGroup Ip Set Forwarded Ip Configuration Fallback Behavior The match status to assign to the web request if the request doesn't have a valid IP address in the specified position.
If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web request at all.
You can specify the following fallback behaviors:
MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
- header
Name String The name of the HTTP header to use for the IP address. For example, to use the X-Forwarded-For (XFF) header, set this to
X-Forwarded-For
.If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web request at all.
- position
Rule
Group Ip Set Forwarded Ip Configuration Position The position in the header to search for the IP address. The header can contain IP addresses of the original client and also of proxies. For example, the header value could be
10.1.1.1, 127.0.0.0, 10.10.10.10
where the first IP address identifies the original client and the rest identify proxies that the request went through.The options for this setting are the following:
- FIRST - Inspect the first IP address in the list of IP addresses in the header. This is usually the client's original IP.
- LAST - Inspect the last IP address in the list of IP addresses in the header.
- ANY - Inspect all IP addresses in the header for a match. If the header contains more than 10 IP addresses, AWS WAF inspects the last 10.
- fallback
Behavior RuleGroup Ip Set Forwarded Ip Configuration Fallback Behavior The match status to assign to the web request if the request doesn't have a valid IP address in the specified position.
If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web request at all.
You can specify the following fallback behaviors:
MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
- header
Name string The name of the HTTP header to use for the IP address. For example, to use the X-Forwarded-For (XFF) header, set this to
X-Forwarded-For
.If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web request at all.
- position
Rule
Group Ip Set Forwarded Ip Configuration Position The position in the header to search for the IP address. The header can contain IP addresses of the original client and also of proxies. For example, the header value could be
10.1.1.1, 127.0.0.0, 10.10.10.10
where the first IP address identifies the original client and the rest identify proxies that the request went through.The options for this setting are the following:
- FIRST - Inspect the first IP address in the list of IP addresses in the header. This is usually the client's original IP.
- LAST - Inspect the last IP address in the list of IP addresses in the header.
- ANY - Inspect all IP addresses in the header for a match. If the header contains more than 10 IP addresses, AWS WAF inspects the last 10.
- fallback_
behavior RuleGroup Ip Set Forwarded Ip Configuration Fallback Behavior The match status to assign to the web request if the request doesn't have a valid IP address in the specified position.
If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web request at all.
You can specify the following fallback behaviors:
MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
- header_
name str The name of the HTTP header to use for the IP address. For example, to use the X-Forwarded-For (XFF) header, set this to
X-Forwarded-For
.If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web request at all.
- position
Rule
Group Ip Set Forwarded Ip Configuration Position The position in the header to search for the IP address. The header can contain IP addresses of the original client and also of proxies. For example, the header value could be
10.1.1.1, 127.0.0.0, 10.10.10.10
where the first IP address identifies the original client and the rest identify proxies that the request went through.The options for this setting are the following:
- FIRST - Inspect the first IP address in the list of IP addresses in the header. This is usually the client's original IP.
- LAST - Inspect the last IP address in the list of IP addresses in the header.
- ANY - Inspect all IP addresses in the header for a match. If the header contains more than 10 IP addresses, AWS WAF inspects the last 10.
- fallback
Behavior "MATCH" | "NO_MATCH" The match status to assign to the web request if the request doesn't have a valid IP address in the specified position.
If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web request at all.
You can specify the following fallback behaviors:
MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
- header
Name String The name of the HTTP header to use for the IP address. For example, to use the X-Forwarded-For (XFF) header, set this to
X-Forwarded-For
.If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web request at all.
- position "FIRST" | "LAST" | "ANY"
The position in the header to search for the IP address. The header can contain IP addresses of the original client and also of proxies. For example, the header value could be
10.1.1.1, 127.0.0.0, 10.10.10.10
where the first IP address identifies the original client and the rest identify proxies that the request went through.The options for this setting are the following:
- FIRST - Inspect the first IP address in the list of IP addresses in the header. This is usually the client's original IP.
- LAST - Inspect the last IP address in the list of IP addresses in the header.
- ANY - Inspect all IP addresses in the header for a match. If the header contains more than 10 IP addresses, AWS WAF inspects the last 10.
RuleGroupIpSetForwardedIpConfigurationFallbackBehavior
RuleGroupIpSetForwardedIpConfigurationPosition
RuleGroupIpSetReferenceStatement
- Arn string
- The Amazon Resource Name (ARN) of the
IPSet
that this statement references. - Ip
Set Pulumi.Forwarded Ip Config Aws Native. Wa Fv2. Inputs. Rule Group Ip Set Forwarded Ip Configuration The configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. Commonly, this is the X-Forwarded-For (XFF) header, but you can specify any header name.
If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web request at all.
- Arn string
- The Amazon Resource Name (ARN) of the
IPSet
that this statement references. - Ip
Set RuleForwarded Ip Config Group Ip Set Forwarded Ip Configuration The configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. Commonly, this is the X-Forwarded-For (XFF) header, but you can specify any header name.
If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web request at all.
- arn String
- The Amazon Resource Name (ARN) of the
IPSet
that this statement references. - ip
Set RuleForwarded Ip Config Group Ip Set Forwarded Ip Configuration The configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. Commonly, this is the X-Forwarded-For (XFF) header, but you can specify any header name.
If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web request at all.
- arn string
- The Amazon Resource Name (ARN) of the
IPSet
that this statement references. - ip
Set RuleForwarded Ip Config Group Ip Set Forwarded Ip Configuration The configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. Commonly, this is the X-Forwarded-For (XFF) header, but you can specify any header name.
If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web request at all.
- arn str
- The Amazon Resource Name (ARN) of the
IPSet
that this statement references. - ip_
set_ Ruleforwarded_ ip_ config Group Ip Set Forwarded Ip Configuration The configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. Commonly, this is the X-Forwarded-For (XFF) header, but you can specify any header name.
If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web request at all.
- arn String
- The Amazon Resource Name (ARN) of the
IPSet
that this statement references. - ip
Set Property MapForwarded Ip Config The configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. Commonly, this is the X-Forwarded-For (XFF) header, but you can specify any header name.
If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web request at all.
RuleGroupJa3Fingerprint
- Fallback
Behavior Pulumi.Aws Native. Wa Fv2. Rule Group Ja3Fingerprint Fallback Behavior The match status to assign to the web request if the request doesn't have a JA3 fingerprint.
You can specify the following fallback behaviors:
MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
- Fallback
Behavior RuleGroup Ja3Fingerprint Fallback Behavior The match status to assign to the web request if the request doesn't have a JA3 fingerprint.
You can specify the following fallback behaviors:
MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
- fallback
Behavior RuleGroup Ja3Fingerprint Fallback Behavior The match status to assign to the web request if the request doesn't have a JA3 fingerprint.
You can specify the following fallback behaviors:
MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
- fallback
Behavior RuleGroup Ja3Fingerprint Fallback Behavior The match status to assign to the web request if the request doesn't have a JA3 fingerprint.
You can specify the following fallback behaviors:
MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
- fallback_
behavior RuleGroup Ja3Fingerprint Fallback Behavior The match status to assign to the web request if the request doesn't have a JA3 fingerprint.
You can specify the following fallback behaviors:
MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
- fallback
Behavior "MATCH" | "NO_MATCH" The match status to assign to the web request if the request doesn't have a JA3 fingerprint.
You can specify the following fallback behaviors:
MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
RuleGroupJa3FingerprintFallbackBehavior
RuleGroupJsonBody
- Match
Pattern Pulumi.Aws Native. Wa Fv2. Inputs. Rule Group Json Match Pattern - The patterns to look for in the JSON body. AWS WAF inspects the results of these pattern matches against the rule inspection criteria.
- Match
Scope Pulumi.Aws Native. Wa Fv2. Rule Group Json Match Scope The parts of the JSON to match against using the
MatchPattern
. If you specifyALL
, AWS WAF matches against keys and values.All
does not require a match to be found in the keys and a match to be found in the values. It requires a match to be found in the keys or the values or both. To require a match in the keys and in the values, use a logicalAND
statement to combine two match rules, one that inspects the keys and another that inspects the values.- Invalid
Fallback Pulumi.Behavior Aws Native. Wa Fv2. Rule Group Body Parsing Fallback Behavior What AWS WAF should do if it fails to completely parse the JSON body. The options are the following:
EVALUATE_AS_STRING
- Inspect the body as plain text. AWS WAF applies the text transformations and inspection criteria that you defined for the JSON inspection to the body text string.MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
If you don't provide this setting, AWS WAF parses and evaluates the content only up to the first parsing failure that it encounters.
AWS WAF does its best to parse the entire JSON body, but might be forced to stop for reasons such as invalid characters, duplicate keys, truncation, and any content whose root node isn't an object or an array.
AWS WAF parses the JSON in the following examples as two valid key, value pairs:
- Missing comma:
{"key1":"value1""key2":"value2"}
- Missing colon:
{"key1":"value1","key2""value2"}
- Extra colons:
{"key1"::"value1","key2""value2"}
- Oversize
Handling Pulumi.Aws Native. Wa Fv2. Rule Group Oversize Handling What AWS WAF should do if the body is larger than AWS WAF can inspect.
AWS WAF does not support inspecting the entire contents of the web request body if the body exceeds the limit for the resource type. When a web request body is larger than the limit, the underlying host service only forwards the contents that are within the limit to AWS WAF for inspection.
- For Application Load Balancer and AWS AppSync , the limit is fixed at 8 KB (8,192 bytes).
- For CloudFront, API Gateway, Amazon Cognito, App Runner, and Verified Access, the default limit is 16 KB (16,384 bytes), and you can increase the limit for each resource type in the web ACL
AssociationConfig
, for additional processing fees.
The options for oversize handling are the following:
CONTINUE
- Inspect the available body contents normally, according to the rule inspection criteria.MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
You can combine the
MATCH
orNO_MATCH
settings for oversize handling with your rule and web ACL action settings, so that you block any request whose body is over the limit.Default:
CONTINUE
- Match
Pattern RuleGroup Json Match Pattern - The patterns to look for in the JSON body. AWS WAF inspects the results of these pattern matches against the rule inspection criteria.
- Match
Scope RuleGroup Json Match Scope The parts of the JSON to match against using the
MatchPattern
. If you specifyALL
, AWS WAF matches against keys and values.All
does not require a match to be found in the keys and a match to be found in the values. It requires a match to be found in the keys or the values or both. To require a match in the keys and in the values, use a logicalAND
statement to combine two match rules, one that inspects the keys and another that inspects the values.- Invalid
Fallback RuleBehavior Group Body Parsing Fallback Behavior What AWS WAF should do if it fails to completely parse the JSON body. The options are the following:
EVALUATE_AS_STRING
- Inspect the body as plain text. AWS WAF applies the text transformations and inspection criteria that you defined for the JSON inspection to the body text string.MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
If you don't provide this setting, AWS WAF parses and evaluates the content only up to the first parsing failure that it encounters.
AWS WAF does its best to parse the entire JSON body, but might be forced to stop for reasons such as invalid characters, duplicate keys, truncation, and any content whose root node isn't an object or an array.
AWS WAF parses the JSON in the following examples as two valid key, value pairs:
- Missing comma:
{"key1":"value1""key2":"value2"}
- Missing colon:
{"key1":"value1","key2""value2"}
- Extra colons:
{"key1"::"value1","key2""value2"}
- Oversize
Handling RuleGroup Oversize Handling What AWS WAF should do if the body is larger than AWS WAF can inspect.
AWS WAF does not support inspecting the entire contents of the web request body if the body exceeds the limit for the resource type. When a web request body is larger than the limit, the underlying host service only forwards the contents that are within the limit to AWS WAF for inspection.
- For Application Load Balancer and AWS AppSync , the limit is fixed at 8 KB (8,192 bytes).
- For CloudFront, API Gateway, Amazon Cognito, App Runner, and Verified Access, the default limit is 16 KB (16,384 bytes), and you can increase the limit for each resource type in the web ACL
AssociationConfig
, for additional processing fees.
The options for oversize handling are the following:
CONTINUE
- Inspect the available body contents normally, according to the rule inspection criteria.MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
You can combine the
MATCH
orNO_MATCH
settings for oversize handling with your rule and web ACL action settings, so that you block any request whose body is over the limit.Default:
CONTINUE
- match
Pattern RuleGroup Json Match Pattern - The patterns to look for in the JSON body. AWS WAF inspects the results of these pattern matches against the rule inspection criteria.
- match
Scope RuleGroup Json Match Scope The parts of the JSON to match against using the
MatchPattern
. If you specifyALL
, AWS WAF matches against keys and values.All
does not require a match to be found in the keys and a match to be found in the values. It requires a match to be found in the keys or the values or both. To require a match in the keys and in the values, use a logicalAND
statement to combine two match rules, one that inspects the keys and another that inspects the values.- invalid
Fallback RuleBehavior Group Body Parsing Fallback Behavior What AWS WAF should do if it fails to completely parse the JSON body. The options are the following:
EVALUATE_AS_STRING
- Inspect the body as plain text. AWS WAF applies the text transformations and inspection criteria that you defined for the JSON inspection to the body text string.MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
If you don't provide this setting, AWS WAF parses and evaluates the content only up to the first parsing failure that it encounters.
AWS WAF does its best to parse the entire JSON body, but might be forced to stop for reasons such as invalid characters, duplicate keys, truncation, and any content whose root node isn't an object or an array.
AWS WAF parses the JSON in the following examples as two valid key, value pairs:
- Missing comma:
{"key1":"value1""key2":"value2"}
- Missing colon:
{"key1":"value1","key2""value2"}
- Extra colons:
{"key1"::"value1","key2""value2"}
- oversize
Handling RuleGroup Oversize Handling What AWS WAF should do if the body is larger than AWS WAF can inspect.
AWS WAF does not support inspecting the entire contents of the web request body if the body exceeds the limit for the resource type. When a web request body is larger than the limit, the underlying host service only forwards the contents that are within the limit to AWS WAF for inspection.
- For Application Load Balancer and AWS AppSync , the limit is fixed at 8 KB (8,192 bytes).
- For CloudFront, API Gateway, Amazon Cognito, App Runner, and Verified Access, the default limit is 16 KB (16,384 bytes), and you can increase the limit for each resource type in the web ACL
AssociationConfig
, for additional processing fees.
The options for oversize handling are the following:
CONTINUE
- Inspect the available body contents normally, according to the rule inspection criteria.MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
You can combine the
MATCH
orNO_MATCH
settings for oversize handling with your rule and web ACL action settings, so that you block any request whose body is over the limit.Default:
CONTINUE
- match
Pattern RuleGroup Json Match Pattern - The patterns to look for in the JSON body. AWS WAF inspects the results of these pattern matches against the rule inspection criteria.
- match
Scope RuleGroup Json Match Scope The parts of the JSON to match against using the
MatchPattern
. If you specifyALL
, AWS WAF matches against keys and values.All
does not require a match to be found in the keys and a match to be found in the values. It requires a match to be found in the keys or the values or both. To require a match in the keys and in the values, use a logicalAND
statement to combine two match rules, one that inspects the keys and another that inspects the values.- invalid
Fallback RuleBehavior Group Body Parsing Fallback Behavior What AWS WAF should do if it fails to completely parse the JSON body. The options are the following:
EVALUATE_AS_STRING
- Inspect the body as plain text. AWS WAF applies the text transformations and inspection criteria that you defined for the JSON inspection to the body text string.MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
If you don't provide this setting, AWS WAF parses and evaluates the content only up to the first parsing failure that it encounters.
AWS WAF does its best to parse the entire JSON body, but might be forced to stop for reasons such as invalid characters, duplicate keys, truncation, and any content whose root node isn't an object or an array.
AWS WAF parses the JSON in the following examples as two valid key, value pairs:
- Missing comma:
{"key1":"value1""key2":"value2"}
- Missing colon:
{"key1":"value1","key2""value2"}
- Extra colons:
{"key1"::"value1","key2""value2"}
- oversize
Handling RuleGroup Oversize Handling What AWS WAF should do if the body is larger than AWS WAF can inspect.
AWS WAF does not support inspecting the entire contents of the web request body if the body exceeds the limit for the resource type. When a web request body is larger than the limit, the underlying host service only forwards the contents that are within the limit to AWS WAF for inspection.
- For Application Load Balancer and AWS AppSync , the limit is fixed at 8 KB (8,192 bytes).
- For CloudFront, API Gateway, Amazon Cognito, App Runner, and Verified Access, the default limit is 16 KB (16,384 bytes), and you can increase the limit for each resource type in the web ACL
AssociationConfig
, for additional processing fees.
The options for oversize handling are the following:
CONTINUE
- Inspect the available body contents normally, according to the rule inspection criteria.MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
You can combine the
MATCH
orNO_MATCH
settings for oversize handling with your rule and web ACL action settings, so that you block any request whose body is over the limit.Default:
CONTINUE
- match_
pattern RuleGroup Json Match Pattern - The patterns to look for in the JSON body. AWS WAF inspects the results of these pattern matches against the rule inspection criteria.
- match_
scope RuleGroup Json Match Scope The parts of the JSON to match against using the
MatchPattern
. If you specifyALL
, AWS WAF matches against keys and values.All
does not require a match to be found in the keys and a match to be found in the values. It requires a match to be found in the keys or the values or both. To require a match in the keys and in the values, use a logicalAND
statement to combine two match rules, one that inspects the keys and another that inspects the values.- invalid_
fallback_ Rulebehavior Group Body Parsing Fallback Behavior What AWS WAF should do if it fails to completely parse the JSON body. The options are the following:
EVALUATE_AS_STRING
- Inspect the body as plain text. AWS WAF applies the text transformations and inspection criteria that you defined for the JSON inspection to the body text string.MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
If you don't provide this setting, AWS WAF parses and evaluates the content only up to the first parsing failure that it encounters.
AWS WAF does its best to parse the entire JSON body, but might be forced to stop for reasons such as invalid characters, duplicate keys, truncation, and any content whose root node isn't an object or an array.
AWS WAF parses the JSON in the following examples as two valid key, value pairs:
- Missing comma:
{"key1":"value1""key2":"value2"}
- Missing colon:
{"key1":"value1","key2""value2"}
- Extra colons:
{"key1"::"value1","key2""value2"}
- oversize_
handling RuleGroup Oversize Handling What AWS WAF should do if the body is larger than AWS WAF can inspect.
AWS WAF does not support inspecting the entire contents of the web request body if the body exceeds the limit for the resource type. When a web request body is larger than the limit, the underlying host service only forwards the contents that are within the limit to AWS WAF for inspection.
- For Application Load Balancer and AWS AppSync , the limit is fixed at 8 KB (8,192 bytes).
- For CloudFront, API Gateway, Amazon Cognito, App Runner, and Verified Access, the default limit is 16 KB (16,384 bytes), and you can increase the limit for each resource type in the web ACL
AssociationConfig
, for additional processing fees.
The options for oversize handling are the following:
CONTINUE
- Inspect the available body contents normally, according to the rule inspection criteria.MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
You can combine the
MATCH
orNO_MATCH
settings for oversize handling with your rule and web ACL action settings, so that you block any request whose body is over the limit.Default:
CONTINUE
- match
Pattern Property Map - The patterns to look for in the JSON body. AWS WAF inspects the results of these pattern matches against the rule inspection criteria.
- match
Scope "ALL" | "KEY" | "VALUE" The parts of the JSON to match against using the
MatchPattern
. If you specifyALL
, AWS WAF matches against keys and values.All
does not require a match to be found in the keys and a match to be found in the values. It requires a match to be found in the keys or the values or both. To require a match in the keys and in the values, use a logicalAND
statement to combine two match rules, one that inspects the keys and another that inspects the values.- invalid
Fallback "MATCH" | "NO_MATCH" | "EVALUATE_AS_STRING"Behavior What AWS WAF should do if it fails to completely parse the JSON body. The options are the following:
EVALUATE_AS_STRING
- Inspect the body as plain text. AWS WAF applies the text transformations and inspection criteria that you defined for the JSON inspection to the body text string.MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
If you don't provide this setting, AWS WAF parses and evaluates the content only up to the first parsing failure that it encounters.
AWS WAF does its best to parse the entire JSON body, but might be forced to stop for reasons such as invalid characters, duplicate keys, truncation, and any content whose root node isn't an object or an array.
AWS WAF parses the JSON in the following examples as two valid key, value pairs:
- Missing comma:
{"key1":"value1""key2":"value2"}
- Missing colon:
{"key1":"value1","key2""value2"}
- Extra colons:
{"key1"::"value1","key2""value2"}
- oversize
Handling "CONTINUE" | "MATCH" | "NO_MATCH" What AWS WAF should do if the body is larger than AWS WAF can inspect.
AWS WAF does not support inspecting the entire contents of the web request body if the body exceeds the limit for the resource type. When a web request body is larger than the limit, the underlying host service only forwards the contents that are within the limit to AWS WAF for inspection.
- For Application Load Balancer and AWS AppSync , the limit is fixed at 8 KB (8,192 bytes).
- For CloudFront, API Gateway, Amazon Cognito, App Runner, and Verified Access, the default limit is 16 KB (16,384 bytes), and you can increase the limit for each resource type in the web ACL
AssociationConfig
, for additional processing fees.
The options for oversize handling are the following:
CONTINUE
- Inspect the available body contents normally, according to the rule inspection criteria.MATCH
- Treat the web request as matching the rule statement. AWS WAF applies the rule action to the request.NO_MATCH
- Treat the web request as not matching the rule statement.
You can combine the
MATCH
orNO_MATCH
settings for oversize handling with your rule and web ACL action settings, so that you block any request whose body is over the limit.Default:
CONTINUE
RuleGroupJsonMatchPattern
- All object
- Inspect all parts of the web request's JSON body.
- Included
Paths List<string> Match only the specified include paths. See also
MatchScope
in theJsonBody
FieldToMatch
specification.Provide the include paths using JSON Pointer syntax. For example,
"IncludedPaths": ["/dogs/0/name", "/dogs/1/name"]
. For information about this syntax, see the Internet Engineering Task Force (IETF) documentation JavaScript Object Notation (JSON) Pointer .You must specify either this setting or the
All
setting, but not both.Don't use this option to include all paths. Instead, use the
All
setting.
- All interface{}
- Inspect all parts of the web request's JSON body.
- Included
Paths []string Match only the specified include paths. See also
MatchScope
in theJsonBody
FieldToMatch
specification.Provide the include paths using JSON Pointer syntax. For example,
"IncludedPaths": ["/dogs/0/name", "/dogs/1/name"]
. For information about this syntax, see the Internet Engineering Task Force (IETF) documentation JavaScript Object Notation (JSON) Pointer .You must specify either this setting or the
All
setting, but not both.Don't use this option to include all paths. Instead, use the
All
setting.
- all Object
- Inspect all parts of the web request's JSON body.
- included
Paths List<String> Match only the specified include paths. See also
MatchScope
in theJsonBody
FieldToMatch
specification.Provide the include paths using JSON Pointer syntax. For example,
"IncludedPaths": ["/dogs/0/name", "/dogs/1/name"]
. For information about this syntax, see the Internet Engineering Task Force (IETF) documentation JavaScript Object Notation (JSON) Pointer .You must specify either this setting or the
All
setting, but not both.Don't use this option to include all paths. Instead, use the
All
setting.
- all any
- Inspect all parts of the web request's JSON body.
- included
Paths string[] Match only the specified include paths. See also
MatchScope
in theJsonBody
FieldToMatch
specification.Provide the include paths using JSON Pointer syntax. For example,
"IncludedPaths": ["/dogs/0/name", "/dogs/1/name"]
. For information about this syntax, see the Internet Engineering Task Force (IETF) documentation JavaScript Object Notation (JSON) Pointer .You must specify either this setting or the
All
setting, but not both.Don't use this option to include all paths. Instead, use the
All
setting.
- all Any
- Inspect all parts of the web request's JSON body.
- included_
paths Sequence[str] Match only the specified include paths. See also
MatchScope
in theJsonBody
FieldToMatch
specification.Provide the include paths using JSON Pointer syntax. For example,
"IncludedPaths": ["/dogs/0/name", "/dogs/1/name"]
. For information about this syntax, see the Internet Engineering Task Force (IETF) documentation JavaScript Object Notation (JSON) Pointer .You must specify either this setting or the
All
setting, but not both.Don't use this option to include all paths. Instead, use the
All
setting.
- all Any
- Inspect all parts of the web request's JSON body.
- included
Paths List<String> Match only the specified include paths. See also
MatchScope
in theJsonBody
FieldToMatch
specification.Provide the include paths using JSON Pointer syntax. For example,
"IncludedPaths": ["/dogs/0/name", "/dogs/1/name"]
. For information about this syntax, see the Internet Engineering Task Force (IETF) documentation JavaScript Object Notation (JSON) Pointer .You must specify either this setting or the
All
setting, but not both.Don't use this option to include all paths. Instead, use the
All
setting.
RuleGroupJsonMatchScope
RuleGroupLabel
- Name string
- The label string.
- Name string
- The label string.
- name String
- The label string.
- name string
- The label string.
- name str
- The label string.
- name String
- The label string.
RuleGroupLabelMatchScope
RuleGroupLabelMatchStatement
- Key string
The string to match against. The setting you provide for this depends on the match statement's
Scope
setting:- If the
Scope
indicatesLABEL
, then this specification must include the name and can include any number of preceding namespace specifications and prefix up to providing the fully qualified label name. - If the
Scope
indicatesNAMESPACE
, then this specification can include any number of contiguous namespace strings, and can include the entire label namespace prefix from the rule group or web ACL where the label originates.
Labels are case sensitive and components of a label must be separated by colon, for example
NS1:NS2:name
.- If the
- Scope
Pulumi.
Aws Native. Wa Fv2. Rule Group Label Match Scope - Specify whether you want to match using the label name or just the namespace.
- Key string
The string to match against. The setting you provide for this depends on the match statement's
Scope
setting:- If the
Scope
indicatesLABEL
, then this specification must include the name and can include any number of preceding namespace specifications and prefix up to providing the fully qualified label name. - If the
Scope
indicatesNAMESPACE
, then this specification can include any number of contiguous namespace strings, and can include the entire label namespace prefix from the rule group or web ACL where the label originates.
Labels are case sensitive and components of a label must be separated by colon, for example
NS1:NS2:name
.- If the
- Scope
Rule
Group Label Match Scope - Specify whether you want to match using the label name or just the namespace.
- key String
The string to match against. The setting you provide for this depends on the match statement's
Scope
setting:- If the
Scope
indicatesLABEL
, then this specification must include the name and can include any number of preceding namespace specifications and prefix up to providing the fully qualified label name. - If the
Scope
indicatesNAMESPACE
, then this specification can include any number of contiguous namespace strings, and can include the entire label namespace prefix from the rule group or web ACL where the label originates.
Labels are case sensitive and components of a label must be separated by colon, for example
NS1:NS2:name
.- If the
- scope
Rule
Group Label Match Scope - Specify whether you want to match using the label name or just the namespace.
- key string
The string to match against. The setting you provide for this depends on the match statement's
Scope
setting:- If the
Scope
indicatesLABEL
, then this specification must include the name and can include any number of preceding namespace specifications and prefix up to providing the fully qualified label name. - If the
Scope
indicatesNAMESPACE
, then this specification can include any number of contiguous namespace strings, and can include the entire label namespace prefix from the rule group or web ACL where the label originates.
Labels are case sensitive and components of a label must be separated by colon, for example
NS1:NS2:name
.- If the
- scope
Rule
Group Label Match Scope - Specify whether you want to match using the label name or just the namespace.
- key str
The string to match against. The setting you provide for this depends on the match statement's
Scope
setting:- If the
Scope
indicatesLABEL
, then this specification must include the name and can include any number of preceding namespace specifications and prefix up to providing the fully qualified label name. - If the
Scope
indicatesNAMESPACE
, then this specification can include any number of contiguous namespace strings, and can include the entire label namespace prefix from the rule group or web ACL where the label originates.
Labels are case sensitive and components of a label must be separated by colon, for example
NS1:NS2:name
.- If the
- scope
Rule
Group Label Match Scope - Specify whether you want to match using the label name or just the namespace.
- key String
The string to match against. The setting you provide for this depends on the match statement's
Scope
setting:- If the
Scope
indicatesLABEL
, then this specification must include the name and can include any number of preceding namespace specifications and prefix up to providing the fully qualified label name. - If the
Scope
indicatesNAMESPACE
, then this specification can include any number of contiguous namespace strings, and can include the entire label namespace prefix from the rule group or web ACL where the label originates.
Labels are case sensitive and components of a label must be separated by colon, for example
NS1:NS2:name
.- If the
- scope "LABEL" | "NAMESPACE"
- Specify whether you want to match using the label name or just the namespace.
RuleGroupLabelSummary
- Name string
- An individual label specification.
- Name string
- An individual label specification.
- name String
- An individual label specification.
- name string
- An individual label specification.
- name str
- An individual label specification.
- name String
- An individual label specification.
RuleGroupMapMatchScope
RuleGroupNotStatement
- Statement
Pulumi.
Aws Native. Wa Fv2. Inputs. Rule Group Statement - The statement to negate. You can use any statement that can be nested.
- Statement
Rule
Group Statement - The statement to negate. You can use any statement that can be nested.
- statement
Rule
Group Statement - The statement to negate. You can use any statement that can be nested.
- statement
Rule
Group Statement - The statement to negate. You can use any statement that can be nested.
- statement
Rule
Group Statement - The statement to negate. You can use any statement that can be nested.
- statement Property Map
- The statement to negate. You can use any statement that can be nested.
RuleGroupOrStatement
- Statements
List<Pulumi.
Aws Native. Wa Fv2. Inputs. Rule Group Statement> - The statements to combine with OR logic. You can use any statements that can be nested.
- Statements
[]Rule
Group Statement - The statements to combine with OR logic. You can use any statements that can be nested.
- statements
List<Rule
Group Statement> - The statements to combine with OR logic. You can use any statements that can be nested.
- statements
Rule
Group Statement[] - The statements to combine with OR logic. You can use any statements that can be nested.
- statements
Sequence[Rule
Group Statement] - The statements to combine with OR logic. You can use any statements that can be nested.
- statements List<Property Map>
- The statements to combine with OR logic. You can use any statements that can be nested.
RuleGroupOversizeHandling
RuleGroupPositionalConstraint
RuleGroupRateBasedStatement
- Aggregate
Key Pulumi.Type Aws Native. Wa Fv2. Rule Group Rate Based Statement Aggregate Key Type Setting that indicates how to aggregate the request counts.
Web requests that are missing any of the components specified in the aggregation keys are omitted from the rate-based rule evaluation and handling.
CONSTANT
- Count and limit the requests that match the rate-based rule's scope-down statement. With this option, the counted requests aren't further aggregated. The scope-down statement is the only specification used. When the count of all requests that satisfy the scope-down statement goes over the limit, AWS WAF applies the rule action to all requests that satisfy the scope-down statement.
With this option, you must configure the
ScopeDownStatement
property.CUSTOM_KEYS
- Aggregate the request counts using one or more web request components as the aggregate keys.
With this option, you must specify the aggregate keys in the
CustomKeys
property.To aggregate on only the IP address or only the forwarded IP address, don't use custom keys. Instead, set the aggregate key type to
IP
orFORWARDED_IP
.FORWARDED_IP
- Aggregate the request counts on the first IP address in an HTTP header.
With this option, you must specify the header to use in the
ForwardedIPConfig
property.To aggregate on a combination of the forwarded IP address with other aggregate keys, use
CUSTOM_KEYS
.IP
- Aggregate the request counts on the IP address from the web request origin.
To aggregate on a combination of the IP address with other aggregate keys, use
CUSTOM_KEYS
.- Limit int
The limit on requests per 5-minute period for a single aggregation instance for the rate-based rule. If the rate-based statement includes a
ScopeDownStatement
, this limit is applied only to the requests that match the statement.Examples:
- If you aggregate on just the IP address, this is the limit on requests from any single IP address.
- If you aggregate on the HTTP method and the query argument name "city", then this is the limit on requests for any single method, city pair.
- Custom
Keys List<Pulumi.Aws Native. Wa Fv2. Inputs. Rule Group Rate Based Statement Custom Key> - Specifies the aggregate keys to use in a rate-base rule.
- Evaluation
Window intSec The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. For example, for a setting of 120, when AWS WAF checks the rate, it counts the requests for the 2 minutes immediately preceding the current time. Valid settings are 60, 120, 300, and 600.
This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds.
Default:
300
(5 minutes)- Forwarded
Ip Pulumi.Config Aws Native. Wa Fv2. Inputs. Rule Group Forwarded Ip Configuration The configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. Commonly, this is the X-Forwarded-For (XFF) header, but you can specify any header name.
If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web request at all.
This is required if you specify a forwarded IP in the rule's aggregate key settings.
- Scope
Down Pulumi.Statement Aws Native. Wa Fv2. Inputs. Rule Group Statement - An optional nested statement that narrows the scope of the web requests that are evaluated and managed by the rate-based statement. When you use a scope-down statement, the rate-based rule only tracks and rate limits requests that match the scope-down statement. You can use any nestable
Statement
in the scope-down statement, and you can nest statements at any level, the same as you can for a rule statement.
- Aggregate
Key RuleType Group Rate Based Statement Aggregate Key Type Setting that indicates how to aggregate the request counts.
Web requests that are missing any of the components specified in the aggregation keys are omitted from the rate-based rule evaluation and handling.
CONSTANT
- Count and limit the requests that match the rate-based rule's scope-down statement. With this option, the counted requests aren't further aggregated. The scope-down statement is the only specification used. When the count of all requests that satisfy the scope-down statement goes over the limit, AWS WAF applies the rule action to all requests that satisfy the scope-down statement.
With this option, you must configure the
ScopeDownStatement
property.CUSTOM_KEYS
- Aggregate the request counts using one or more web request components as the aggregate keys.
With this option, you must specify the aggregate keys in the
CustomKeys
property.To aggregate on only the IP address or only the forwarded IP address, don't use custom keys. Instead, set the aggregate key type to
IP
orFORWARDED_IP
.FORWARDED_IP
- Aggregate the request counts on the first IP address in an HTTP header.
With this option, you must specify the header to use in the
ForwardedIPConfig
property.To aggregate on a combination of the forwarded IP address with other aggregate keys, use
CUSTOM_KEYS
.IP
- Aggregate the request counts on the IP address from the web request origin.
To aggregate on a combination of the IP address with other aggregate keys, use
CUSTOM_KEYS
.- Limit int
The limit on requests per 5-minute period for a single aggregation instance for the rate-based rule. If the rate-based statement includes a
ScopeDownStatement
, this limit is applied only to the requests that match the statement.Examples:
- If you aggregate on just the IP address, this is the limit on requests from any single IP address.
- If you aggregate on the HTTP method and the query argument name "city", then this is the limit on requests for any single method, city pair.
- Custom
Keys []RuleGroup Rate Based Statement Custom Key - Specifies the aggregate keys to use in a rate-base rule.
- Evaluation
Window intSec The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. For example, for a setting of 120, when AWS WAF checks the rate, it counts the requests for the 2 minutes immediately preceding the current time. Valid settings are 60, 120, 300, and 600.
This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds.
Default:
300
(5 minutes)- Forwarded
Ip RuleConfig Group Forwarded Ip Configuration The configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. Commonly, this is the X-Forwarded-For (XFF) header, but you can specify any header name.
If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web request at all.
This is required if you specify a forwarded IP in the rule's aggregate key settings.
- Scope
Down RuleStatement Group Statement - An optional nested statement that narrows the scope of the web requests that are evaluated and managed by the rate-based statement. When you use a scope-down statement, the rate-based rule only tracks and rate limits requests that match the scope-down statement. You can use any nestable
Statement
in the scope-down statement, and you can nest statements at any level, the same as you can for a rule statement.
- aggregate
Key RuleType Group Rate Based Statement Aggregate Key Type Setting that indicates how to aggregate the request counts.
Web requests that are missing any of the components specified in the aggregation keys are omitted from the rate-based rule evaluation and handling.
CONSTANT
- Count and limit the requests that match the rate-based rule's scope-down statement. With this option, the counted requests aren't further aggregated. The scope-down statement is the only specification used. When the count of all requests that satisfy the scope-down statement goes over the limit, AWS WAF applies the rule action to all requests that satisfy the scope-down statement.
With this option, you must configure the
ScopeDownStatement
property.CUSTOM_KEYS
- Aggregate the request counts using one or more web request components as the aggregate keys.
With this option, you must specify the aggregate keys in the
CustomKeys
property.To aggregate on only the IP address or only the forwarded IP address, don't use custom keys. Instead, set the aggregate key type to
IP
orFORWARDED_IP
.FORWARDED_IP
- Aggregate the request counts on the first IP address in an HTTP header.
With this option, you must specify the header to use in the
ForwardedIPConfig
property.To aggregate on a combination of the forwarded IP address with other aggregate keys, use
CUSTOM_KEYS
.IP
- Aggregate the request counts on the IP address from the web request origin.
To aggregate on a combination of the IP address with other aggregate keys, use
CUSTOM_KEYS
.- limit Integer
The limit on requests per 5-minute period for a single aggregation instance for the rate-based rule. If the rate-based statement includes a
ScopeDownStatement
, this limit is applied only to the requests that match the statement.Examples:
- If you aggregate on just the IP address, this is the limit on requests from any single IP address.
- If you aggregate on the HTTP method and the query argument name "city", then this is the limit on requests for any single method, city pair.
- custom
Keys List<RuleGroup Rate Based Statement Custom Key> - Specifies the aggregate keys to use in a rate-base rule.
- evaluation
Window IntegerSec The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. For example, for a setting of 120, when AWS WAF checks the rate, it counts the requests for the 2 minutes immediately preceding the current time. Valid settings are 60, 120, 300, and 600.
This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds.
Default:
300
(5 minutes)- forwarded
Ip RuleConfig Group Forwarded Ip Configuration The configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. Commonly, this is the X-Forwarded-For (XFF) header, but you can specify any header name.
If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web request at all.
This is required if you specify a forwarded IP in the rule's aggregate key settings.
- scope
Down RuleStatement Group Statement - An optional nested statement that narrows the scope of the web requests that are evaluated and managed by the rate-based statement. When you use a scope-down statement, the rate-based rule only tracks and rate limits requests that match the scope-down statement. You can use any nestable
Statement
in the scope-down statement, and you can nest statements at any level, the same as you can for a rule statement.
- aggregate
Key RuleType Group Rate Based Statement Aggregate Key Type Setting that indicates how to aggregate the request counts.
Web requests that are missing any of the components specified in the aggregation keys are omitted from the rate-based rule evaluation and handling.
CONSTANT
- Count and limit the requests that match the rate-based rule's scope-down statement. With this option, the counted requests aren't further aggregated. The scope-down statement is the only specification used. When the count of all requests that satisfy the scope-down statement goes over the limit, AWS WAF applies the rule action to all requests that satisfy the scope-down statement.
With this option, you must configure the
ScopeDownStatement
property.CUSTOM_KEYS
- Aggregate the request counts using one or more web request components as the aggregate keys.
With this option, you must specify the aggregate keys in the
CustomKeys
property.To aggregate on only the IP address or only the forwarded IP address, don't use custom keys. Instead, set the aggregate key type to
IP
orFORWARDED_IP
.FORWARDED_IP
- Aggregate the request counts on the first IP address in an HTTP header.
With this option, you must specify the header to use in the
ForwardedIPConfig
property.To aggregate on a combination of the forwarded IP address with other aggregate keys, use
CUSTOM_KEYS
.IP
- Aggregate the request counts on the IP address from the web request origin.
To aggregate on a combination of the IP address with other aggregate keys, use
CUSTOM_KEYS
.- limit number
The limit on requests per 5-minute period for a single aggregation instance for the rate-based rule. If the rate-based statement includes a
ScopeDownStatement
, this limit is applied only to the requests that match the statement.Examples:
- If you aggregate on just the IP address, this is the limit on requests from any single IP address.
- If you aggregate on the HTTP method and the query argument name "city", then this is the limit on requests for any single method, city pair.
- custom
Keys RuleGroup Rate Based Statement Custom Key[] - Specifies the aggregate keys to use in a rate-base rule.
- evaluation
Window numberSec The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. For example, for a setting of 120, when AWS WAF checks the rate, it counts the requests for the 2 minutes immediately preceding the current time. Valid settings are 60, 120, 300, and 600.
This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds.
Default:
300
(5 minutes)- forwarded
Ip RuleConfig Group Forwarded Ip Configuration The configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. Commonly, this is the X-Forwarded-For (XFF) header, but you can specify any header name.
If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web request at all.
This is required if you specify a forwarded IP in the rule's aggregate key settings.
- scope
Down RuleStatement Group Statement - An optional nested statement that narrows the scope of the web requests that are evaluated and managed by the rate-based statement. When you use a scope-down statement, the rate-based rule only tracks and rate limits requests that match the scope-down statement. You can use any nestable
Statement
in the scope-down statement, and you can nest statements at any level, the same as you can for a rule statement.
- aggregate_
key_ Ruletype Group Rate Based Statement Aggregate Key Type Setting that indicates how to aggregate the request counts.
Web requests that are missing any of the components specified in the aggregation keys are omitted from the rate-based rule evaluation and handling.
CONSTANT
- Count and limit the requests that match the rate-based rule's scope-down statement. With this option, the counted requests aren't further aggregated. The scope-down statement is the only specification used. When the count of all requests that satisfy the scope-down statement goes over the limit, AWS WAF applies the rule action to all requests that satisfy the scope-down statement.
With this option, you must configure the
ScopeDownStatement
property.CUSTOM_KEYS
- Aggregate the request counts using one or more web request components as the aggregate keys.
With this option, you must specify the aggregate keys in the
CustomKeys
property.To aggregate on only the IP address or only the forwarded IP address, don't use custom keys. Instead, set the aggregate key type to
IP
orFORWARDED_IP
.FORWARDED_IP
- Aggregate the request counts on the first IP address in an HTTP header.
With this option, you must specify the header to use in the
ForwardedIPConfig
property.To aggregate on a combination of the forwarded IP address with other aggregate keys, use
CUSTOM_KEYS
.IP
- Aggregate the request counts on the IP address from the web request origin.
To aggregate on a combination of the IP address with other aggregate keys, use
CUSTOM_KEYS
.- limit int
The limit on requests per 5-minute period for a single aggregation instance for the rate-based rule. If the rate-based statement includes a
ScopeDownStatement
, this limit is applied only to the requests that match the statement.Examples:
- If you aggregate on just the IP address, this is the limit on requests from any single IP address.
- If you aggregate on the HTTP method and the query argument name "city", then this is the limit on requests for any single method, city pair.
- custom_
keys Sequence[RuleGroup Rate Based Statement Custom Key] - Specifies the aggregate keys to use in a rate-base rule.
- evaluation_
window_ intsec The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. For example, for a setting of 120, when AWS WAF checks the rate, it counts the requests for the 2 minutes immediately preceding the current time. Valid settings are 60, 120, 300, and 600.
This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds.
Default:
300
(5 minutes)- forwarded_
ip_ Ruleconfig Group Forwarded Ip Configuration The configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. Commonly, this is the X-Forwarded-For (XFF) header, but you can specify any header name.
If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web request at all.
This is required if you specify a forwarded IP in the rule's aggregate key settings.
- scope_
down_ Rulestatement Group Statement - An optional nested statement that narrows the scope of the web requests that are evaluated and managed by the rate-based statement. When you use a scope-down statement, the rate-based rule only tracks and rate limits requests that match the scope-down statement. You can use any nestable
Statement
in the scope-down statement, and you can nest statements at any level, the same as you can for a rule statement.
- aggregate
Key "IP" | "FORWARDED_IP" | "CONSTANT" | "CUSTOM_KEYS"Type Setting that indicates how to aggregate the request counts.
Web requests that are missing any of the components specified in the aggregation keys are omitted from the rate-based rule evaluation and handling.
CONSTANT
- Count and limit the requests that match the rate-based rule's scope-down statement. With this option, the counted requests aren't further aggregated. The scope-down statement is the only specification used. When the count of all requests that satisfy the scope-down statement goes over the limit, AWS WAF applies the rule action to all requests that satisfy the scope-down statement.
With this option, you must configure the
ScopeDownStatement
property.CUSTOM_KEYS
- Aggregate the request counts using one or more web request components as the aggregate keys.
With this option, you must specify the aggregate keys in the
CustomKeys
property.To aggregate on only the IP address or only the forwarded IP address, don't use custom keys. Instead, set the aggregate key type to
IP
orFORWARDED_IP
.FORWARDED_IP
- Aggregate the request counts on the first IP address in an HTTP header.
With this option, you must specify the header to use in the
ForwardedIPConfig
property.To aggregate on a combination of the forwarded IP address with other aggregate keys, use
CUSTOM_KEYS
.IP
- Aggregate the request counts on the IP address from the web request origin.
To aggregate on a combination of the IP address with other aggregate keys, use
CUSTOM_KEYS
.- limit Number
The limit on requests per 5-minute period for a single aggregation instance for the rate-based rule. If the rate-based statement includes a
ScopeDownStatement
, this limit is applied only to the requests that match the statement.Examples:
- If you aggregate on just the IP address, this is the limit on requests from any single IP address.
- If you aggregate on the HTTP method and the query argument name "city", then this is the limit on requests for any single method, city pair.
- custom
Keys List<Property Map> - Specifies the aggregate keys to use in a rate-base rule.
- evaluation
Window NumberSec The amount of time, in seconds, that AWS WAF should include in its request counts, looking back from the current time. For example, for a setting of 120, when AWS WAF checks the rate, it counts the requests for the 2 minutes immediately preceding the current time. Valid settings are 60, 120, 300, and 600.
This setting doesn't determine how often AWS WAF checks the rate, but how far back it looks each time it checks. AWS WAF checks the rate about every 10 seconds.
Default:
300
(5 minutes)- forwarded
Ip Property MapConfig The configuration for inspecting IP addresses in an HTTP header that you specify, instead of using the IP address that's reported by the web request origin. Commonly, this is the X-Forwarded-For (XFF) header, but you can specify any header name.
If the specified header isn't present in the request, AWS WAF doesn't apply the rule to the web request at all.
This is required if you specify a forwarded IP in the rule's aggregate key settings.
- scope
Down Property MapStatement - An optional nested statement that narrows the scope of the web requests that are evaluated and managed by the rate-based statement. When you use a scope-down statement, the rate-based rule only tracks and rate limits requests that match the scope-down statement. You can use any nestable
Statement
in the scope-down statement, and you can nest statements at any level, the same as you can for a rule statement.
RuleGroupRateBasedStatementAggregateKeyType
RuleGroupRateBasedStatementCustomKey
- Pulumi.
Aws Native. Wa Fv2. Inputs. Rule Group Rate Limit Cookie - Use the value of a cookie in the request as an aggregate key. Each distinct value in the cookie contributes to the aggregation instance. If you use a single cookie as your custom key, then each value fully defines an aggregation instance.
- Forwarded
Ip Pulumi.Aws Native. Wa Fv2. Inputs. Rule Group Rate Limit Forwarded Ip Use the first IP address in an HTTP header as an aggregate key. Each distinct forwarded IP address contributes to the aggregation instance.
When you specify an IP or forwarded IP in the custom key settings, you must also specify at least one other key to use. You can aggregate on only the forwarded IP address by specifying
FORWARDED_IP
in your rate-based statement'sAggregateKeyType
.With this option, you must specify the header to use in the rate-based rule's
ForwardedIPConfig
property.- Header
Pulumi.
Aws Native. Wa Fv2. Inputs. Rule Group Rate Limit Header - Use the value of a header in the request as an aggregate key. Each distinct value in the header contributes to the aggregation instance. If you use a single header as your custom key, then each value fully defines an aggregation instance.
- Http
Method Pulumi.Aws Native. Wa Fv2. Inputs. Rule Group Rate Limit Http Method - Use the request's HTTP method as an aggregate key. Each distinct HTTP method contributes to the aggregation instance. If you use just the HTTP method as your custom key, then each method fully defines an aggregation instance.
- Ip
Pulumi.
Aws Native. Wa Fv2. Inputs. Rule Group Rate Limit Ip Use the request's originating IP address as an aggregate key. Each distinct IP address contributes to the aggregation instance.
When you specify an IP or forwarded IP in the custom key settings, you must also specify at least one other key to use. You can aggregate on only the IP address by specifying
IP
in your rate-based statement'sAggregateKeyType
.- Label
Namespace Pulumi.Aws Native. Wa Fv2. Inputs. Rule Group Rate Limit Label Namespace Use the specified label namespace as an aggregate key. Each distinct fully qualified label name that has the specified label namespace contributes to the aggregation instance. If you use just one label namespace as your custom key, then each label name fully defines an aggregation instance.
This uses only labels that have been added to the request by rules that are evaluated before this rate-based rule in the web ACL.
For information about label namespaces and names, see Label syntax and naming requirements in the AWS WAF Developer Guide .
- Query
Argument Pulumi.Aws Native. Wa Fv2. Inputs. Rule Group Rate Limit Query Argument - Use the specified query argument as an aggregate key. Each distinct value for the named query argument contributes to the aggregation instance. If you use a single query argument as your custom key, then each value fully defines an aggregation instance.
- Query
String Pulumi.Aws Native. Wa Fv2. Inputs. Rule Group Rate Limit Query String - Use the request's query string as an aggregate key. Each distinct string contributes to the aggregation instance. If you use just the query string as your custom key, then each string fully defines an aggregation instance.
- Uri
Path Pulumi.Aws Native. Wa Fv2. Inputs. Rule Group Rate Limit Uri Path - Use the request's URI path as an aggregate key. Each distinct URI path contributes to the aggregation instance. If you use just the URI path as your custom key, then each URI path fully defines an aggregation instance.
- Rule
Group Rate Limit Cookie - Use the value of a cookie in the request as an aggregate key. Each distinct value in the cookie contributes to the aggregation instance. If you use a single cookie as your custom key, then each value fully defines an aggregation instance.
- Forwarded
Ip RuleGroup Rate Limit Forwarded Ip Use the first IP address in an HTTP header as an aggregate key. Each distinct forwarded IP address contributes to the aggregation instance.
When you specify an IP or forwarded IP in the custom key settings, you must also specify at least one other key to use. You can aggregate on only the forwarded IP address by specifying
FORWARDED_IP
in your rate-based statement'sAggregateKeyType
.With this option, you must specify the header to use in the rate-based rule's
ForwardedIPConfig
property.- Header
Rule
Group Rate Limit Header - Use the value of a header in the request as an aggregate key. Each distinct value in the header contributes to the aggregation instance. If you use a single header as your custom key, then each value fully defines an aggregation instance.
- Http
Method RuleGroup Rate Limit Http Method - Use the request's HTTP method as an aggregate key. Each distinct HTTP method contributes to the aggregation instance. If you use just the HTTP method as your custom key, then each method fully defines an aggregation instance.
- Ip
Rule
Group Rate Limit Ip Use the request's originating IP address as an aggregate key. Each distinct IP address contributes to the aggregation instance.
When you specify an IP or forwarded IP in the custom key settings, you must also specify at least one other key to use. You can aggregate on only the IP address by specifying
IP
in your rate-based statement'sAggregateKeyType
.- Label
Namespace RuleGroup Rate Limit Label Namespace Use the specified label namespace as an aggregate key. Each distinct fully qualified label name that has the specified label namespace contributes to the aggregation instance. If you use just one label namespace as your custom key, then each label name fully defines an aggregation instance.
This uses only labels that have been added to the request by rules that are evaluated before this rate-based rule in the web ACL.
For information about label namespaces and names, see Label syntax and naming requirements in the AWS WAF Developer Guide .
- Query
Argument RuleGroup Rate Limit Query Argument - Use the specified query argument as an aggregate key. Each distinct value for the named query argument contributes to the aggregation instance. If you use a single query argument as your custom key, then each value fully defines an aggregation instance.
- Query
String RuleGroup Rate Limit Query String - Use the request's query string as an aggregate key. Each distinct string contributes to the aggregation instance. If you use just the query string as your custom key, then each string fully defines an aggregation instance.
- Uri
Path RuleGroup Rate Limit Uri Path - Use the request's URI path as an aggregate key. Each distinct URI path contributes to the aggregation instance. If you use just the URI path as your custom key, then each URI path fully defines an aggregation instance.
- Rule
Group Rate Limit Cookie - Use the value of a cookie in the request as an aggregate key. Each distinct value in the cookie contributes to the aggregation instance. If you use a single cookie as your custom key, then each value fully defines an aggregation instance.
- forwarded
Ip RuleGroup Rate Limit Forwarded Ip Use the first IP address in an HTTP header as an aggregate key. Each distinct forwarded IP address contributes to the aggregation instance.
When you specify an IP or forwarded IP in the custom key settings, you must also specify at least one other key to use. You can aggregate on only the forwarded IP address by specifying
FORWARDED_IP
in your rate-based statement'sAggregateKeyType
.With this option, you must specify the header to use in the rate-based rule's
ForwardedIPConfig
property.- header
Rule
Group Rate Limit Header - Use the value of a header in the request as an aggregate key. Each distinct value in the header contributes to the aggregation instance. If you use a single header as your custom key, then each value fully defines an aggregation instance.
- http
Method RuleGroup Rate Limit Http Method - Use the request's HTTP method as an aggregate key. Each distinct HTTP method contributes to the aggregation instance. If you use just the HTTP method as your custom key, then each method fully defines an aggregation instance.
- ip
Rule
Group Rate Limit Ip Use the request's originating IP address as an aggregate key. Each distinct IP address contributes to the aggregation instance.
When you specify an IP or forwarded IP in the custom key settings, you must also specify at least one other key to use. You can aggregate on only the IP address by specifying
IP
in your rate-based statement'sAggregateKeyType
.- label
Namespace RuleGroup Rate Limit Label Namespace Use the specified label namespace as an aggregate key. Each distinct fully qualified label name that has the specified label namespace contributes to the aggregation instance. If you use just one label namespace as your custom key, then each label name fully defines an aggregation instance.
This uses only labels that have been added to the request by rules that are evaluated before this rate-based rule in the web ACL.
For information about label namespaces and names, see Label syntax and naming requirements in the AWS WAF Developer Guide .
- query
Argument RuleGroup Rate Limit Query Argument - Use the specified query argument as an aggregate key. Each distinct value for the named query argument contributes to the aggregation instance. If you use a single query argument as your custom key, then each value fully defines an aggregation instance.
- query
String RuleGroup Rate Limit Query String - Use the request's query string as an aggregate key. Each distinct string contributes to the aggregation instance. If you use just the query string as your custom key, then each string fully defines an aggregation instance.
- uri
Path RuleGroup Rate Limit Uri Path - Use the request's URI path as an aggregate key. Each distinct URI path contributes to the aggregation instance. If you use just the URI path as your custom key, then each URI path fully defines an aggregation instance.
- Rule
Group Rate Limit Cookie - Use the value of a cookie in the request as an aggregate key. Each distinct value in the cookie contributes to the aggregation instance. If you use a single cookie as your custom key, then each value fully defines an aggregation instance.
- forwarded
Ip RuleGroup Rate Limit Forwarded Ip Use the first IP address in an HTTP header as an aggregate key. Each distinct forwarded IP address contributes to the aggregation instance.
When you specify an IP or forwarded IP in the custom key settings, you must also specify at least one other key to use. You can aggregate on only the forwarded IP address by specifying
FORWARDED_IP
in your rate-based statement'sAggregateKeyType
.With this option, you must specify the header to use in the rate-based rule's
ForwardedIPConfig
property.- header
Rule
Group Rate Limit Header - Use the value of a header in the request as an aggregate key. Each distinct value in the header contributes to the aggregation instance. If you use a single header as your custom key, then each value fully defines an aggregation instance.
- http
Method RuleGroup Rate Limit Http Method - Use the request's HTTP method as an aggregate key. Each distinct HTTP method contributes to the aggregation instance. If you use just the HTTP method as your custom key, then each method fully defines an aggregation instance.
- ip
Rule
Group Rate Limit Ip Use the request's originating IP address as an aggregate key. Each distinct IP address contributes to the aggregation instance.
When you specify an IP or forwarded IP in the custom key settings, you must also specify at least one other key to use. You can aggregate on only the IP address by specifying
IP
in your rate-based statement'sAggregateKeyType
.- label
Namespace RuleGroup Rate Limit Label Namespace Use the specified label namespace as an aggregate key. Each distinct fully qualified label name that has the specified label namespace contributes to the aggregation instance. If you use just one label namespace as your custom key, then each label name fully defines an aggregation instance.
This uses only labels that have been added to the request by rules that are evaluated before this rate-based rule in the web ACL.
For information about label namespaces and names, see Label syntax and naming requirements in the AWS WAF Developer Guide .
- query
Argument RuleGroup Rate Limit Query Argument - Use the specified query argument as an aggregate key. Each distinct value for the named query argument contributes to the aggregation instance. If you use a single query argument as your custom key, then each value fully defines an aggregation instance.
- query
String RuleGroup Rate Limit Query String - Use the request's query string as an aggregate key. Each distinct string contributes to the aggregation instance. If you use just the query string as your custom key, then each string fully defines an aggregation instance.
- uri
Path RuleGroup Rate Limit Uri Path - Use the request's URI path as an aggregate key. Each distinct URI path contributes to the aggregation instance. If you use just the URI path as your custom key, then each URI path fully defines an aggregation instance.
- Rule
Group Rate Limit Cookie - Use the value of a cookie in the request as an aggregate key. Each distinct value in the cookie contributes to the aggregation instance. If you use a single cookie as your custom key, then each value fully defines an aggregation instance.
- forwarded_
ip RuleGroup Rate Limit Forwarded Ip Use the first IP address in an HTTP header as an aggregate key. Each distinct forwarded IP address contributes to the aggregation instance.
When you specify an IP or forwarded IP in the custom key settings, you must also specify at least one other key to use. You can aggregate on only the forwarded IP address by specifying
FORWARDED_IP
in your rate-based statement'sAggregateKeyType
.With this option, you must specify the header to use in the rate-based rule's
ForwardedIPConfig
property.- header
Rule
Group Rate Limit Header - Use the value of a header in the request as an aggregate key. Each distinct value in the header contributes to the aggregation instance. If you use a single header as your custom key, then each value fully defines an aggregation instance.
- http_
method RuleGroup Rate Limit Http Method - Use the request's HTTP method as an aggregate key. Each distinct HTTP method contributes to the aggregation instance. If you use just the HTTP method as your custom key, then each method fully defines an aggregation instance.
- ip
Rule
Group Rate Limit Ip Use the request's originating IP address as an aggregate key. Each distinct IP address contributes to the aggregation instance.
When you specify an IP or forwarded IP in the custom key settings, you must also specify at least one other key to use. You can aggregate on only the IP address by specifying
IP
in your rate-based statement'sAggregateKeyType
.- label_
namespace RuleGroup Rate Limit Label Namespace Use the specified label namespace as an aggregate key. Each distinct fully qualified label name that has the specified label namespace contributes to the aggregation instance. If you use just one label namespace as your custom key, then each label name fully defines an aggregation instance.
This uses only labels that have been added to the request by rules that are evaluated before this rate-based rule in the web ACL.
For information about label namespaces and names, see Label syntax and naming requirements in the AWS WAF Developer Guide .
- query_
argument RuleGroup Rate Limit Query Argument - Use the specified query argument as an aggregate key. Each distinct value for the named query argument contributes to the aggregation instance. If you use a single query argument as your custom key, then each value fully defines an aggregation instance.
- query_
string RuleGroup Rate Limit Query String - Use the request's query string as an aggregate key. Each distinct string contributes to the aggregation instance. If you use just the query string as your custom key, then each string fully defines an aggregation instance.
- uri_
path RuleGroup Rate Limit Uri Path - Use the request's URI path as an aggregate key. Each distinct URI path contributes to the aggregation instance. If you use just the URI path as your custom key, then each URI path fully defines an aggregation instance.
- Property Map
- Use the value of a cookie in the request as an aggregate key. Each distinct value in the cookie contributes to the aggregation instance. If you use a single cookie as your custom key, then each value fully defines an aggregation instance.
- forwarded
Ip Property Map Use the first IP address in an HTTP header as an aggregate key. Each distinct forwarded IP address contributes to the aggregation instance.
When you specify an IP or forwarded IP in the custom key settings, you must also specify at least one other key to use. You can aggregate on only the forwarded IP address by specifying
FORWARDED_IP
in your rate-based statement'sAggregateKeyType
.With this option, you must specify the header to use in the rate-based rule's
ForwardedIPConfig
property.- header Property Map
- Use the value of a header in the request as an aggregate key. Each distinct value in the header contributes to the aggregation instance. If you use a single header as your custom key, then each value fully defines an aggregation instance.
- http
Method Property Map - Use the request's HTTP method as an aggregate key. Each distinct HTTP method contributes to the aggregation instance. If you use just the HTTP method as your custom key, then each method fully defines an aggregation instance.
- ip Property Map
Use the request's originating IP address as an aggregate key. Each distinct IP address contributes to the aggregation instance.
When you specify an IP or forwarded IP in the custom key settings, you must also specify at least one other key to use. You can aggregate on only the IP address by specifying
IP
in your rate-based statement'sAggregateKeyType
.- label
Namespace Property Map Use the specified label namespace as an aggregate key. Each distinct fully qualified label name that has the specified label namespace contributes to the aggregation instance. If you use just one label namespace as your custom key, then each label name fully defines an aggregation instance.
This uses only labels that have been added to the request by rules that are evaluated before this rate-based rule in the web ACL.
For information about label namespaces and names, see Label syntax and naming requirements in the AWS WAF Developer Guide .
- query
Argument Property Map - Use the specified query argument as an aggregate key. Each distinct value for the named query argument contributes to the aggregation instance. If you use a single query argument as your custom key, then each value fully defines an aggregation instance.
- query
String Property Map - Use the request's query string as an aggregate key. Each distinct string contributes to the aggregation instance. If you use just the query string as your custom key, then each string fully defines an aggregation instance.
- uri
Path Property Map - Use the request's URI path as an aggregate key. Each distinct URI path contributes to the aggregation instance. If you use just the URI path as your custom key, then each URI path fully defines an aggregation instance.
RuleGroupRateLimitCookie
- Name string
- The name of the cookie to use.
- Text
Transformations List<Pulumi.Aws Native. Wa Fv2. Inputs. Rule Group Text Transformation> - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the
FieldToMatch
request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, AWS WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.
- Name string
- The name of the cookie to use.
- Text
Transformations []RuleGroup Text Transformation - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the
FieldToMatch
request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, AWS WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.
- name String
- The name of the cookie to use.
- text
Transformations List<RuleGroup Text Transformation> - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the
FieldToMatch
request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, AWS WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.
- name string
- The name of the cookie to use.
- text
Transformations RuleGroup Text Transformation[] - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the
FieldToMatch
request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, AWS WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.
- name str
- The name of the cookie to use.
- text_
transformations Sequence[RuleGroup Text Transformation] - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the
FieldToMatch
request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, AWS WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.
- name String
- The name of the cookie to use.
- text
Transformations List<Property Map> - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the
FieldToMatch
request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, AWS WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.
RuleGroupRateLimitHeader
- Name string
- The name of the header to use.
- Text
Transformations List<Pulumi.Aws Native. Wa Fv2. Inputs. Rule Group Text Transformation> - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the
FieldToMatch
request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, AWS WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.
- Name string
- The name of the header to use.
- Text
Transformations []RuleGroup Text Transformation - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the
FieldToMatch
request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, AWS WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.
- name String
- The name of the header to use.
- text
Transformations List<RuleGroup Text Transformation> - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the
FieldToMatch
request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, AWS WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.
- name string
- The name of the header to use.
- text
Transformations RuleGroup Text Transformation[] - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the
FieldToMatch
request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, AWS WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.
- name str
- The name of the header to use.
- text_
transformations Sequence[RuleGroup Text Transformation] - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the
FieldToMatch
request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, AWS WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.
- name String
- The name of the header to use.
- text
Transformations List<Property Map> - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the
FieldToMatch
request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, AWS WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.
RuleGroupRateLimitLabelNamespace
- Namespace string
- The namespace to use for aggregation.
- Namespace string
- The namespace to use for aggregation.
- namespace String
- The namespace to use for aggregation.
- namespace string
- The namespace to use for aggregation.
- namespace str
- The namespace to use for aggregation.
- namespace String
- The namespace to use for aggregation.
RuleGroupRateLimitQueryArgument
- Name string
- The name of the query argument to use.
- Text
Transformations List<Pulumi.Aws Native. Wa Fv2. Inputs. Rule Group Text Transformation> - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the
FieldToMatch
request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, AWS WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.
- Name string
- The name of the query argument to use.
- Text
Transformations []RuleGroup Text Transformation - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the
FieldToMatch
request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, AWS WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.
- name String
- The name of the query argument to use.
- text
Transformations List<RuleGroup Text Transformation> - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the
FieldToMatch
request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, AWS WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.
- name string
- The name of the query argument to use.
- text
Transformations RuleGroup Text Transformation[] - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the
FieldToMatch
request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, AWS WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.
- name str
- The name of the query argument to use.
- text_
transformations Sequence[RuleGroup Text Transformation] - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the
FieldToMatch
request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, AWS WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.
- name String
- The name of the query argument to use.
- text
Transformations List<Property Map> - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the
FieldToMatch
request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, AWS WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.
RuleGroupRateLimitQueryString
- Text
Transformations List<Pulumi.Aws Native. Wa Fv2. Inputs. Rule Group Text Transformation> - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the
FieldToMatch
request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, AWS WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.
- Text
Transformations []RuleGroup Text Transformation - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the
FieldToMatch
request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, AWS WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.
- text
Transformations List<RuleGroup Text Transformation> - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the
FieldToMatch
request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, AWS WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.
- text
Transformations RuleGroup Text Transformation[] - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the
FieldToMatch
request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, AWS WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.
- text_
transformations Sequence[RuleGroup Text Transformation] - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the
FieldToMatch
request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, AWS WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.
- text
Transformations List<Property Map> - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the
FieldToMatch
request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, AWS WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.
RuleGroupRateLimitUriPath
- Text
Transformations List<Pulumi.Aws Native. Wa Fv2. Inputs. Rule Group Text Transformation> - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the
FieldToMatch
request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, AWS WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.
- Text
Transformations []RuleGroup Text Transformation - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the
FieldToMatch
request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, AWS WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.
- text
Transformations List<RuleGroup Text Transformation> - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the
FieldToMatch
request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, AWS WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.
- text
Transformations RuleGroup Text Transformation[] - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the
FieldToMatch
request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, AWS WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.
- text_
transformations Sequence[RuleGroup Text Transformation] - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the
FieldToMatch
request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, AWS WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.
- text
Transformations List<Property Map> - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. Text transformations are used in rule match statements, to transform the
FieldToMatch
request component before inspecting it, and they're used in rate-based rule statements, to transform request components before using them as custom aggregation keys. If you specify one or more transformations to apply, AWS WAF performs all transformations on the specified content, starting from the lowest priority setting, and then uses the transformed component contents.
RuleGroupRegexMatchStatement
- Field
To Pulumi.Match Aws Native. Wa Fv2. Inputs. Rule Group Field To Match - The part of the web request that you want AWS WAF to inspect.
- Regex
String string - The string representing the regular expression.
- Text
Transformations List<Pulumi.Aws Native. Wa Fv2. Inputs. Rule Group Text Transformation> - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. If you specify one or more transformations in a rule statement, AWS WAF performs all transformations on the content of the request component identified by
FieldToMatch
, starting from the lowest priority setting, before inspecting the content for a match.
- Field
To RuleMatch Group Field To Match - The part of the web request that you want AWS WAF to inspect.
- Regex
String string - The string representing the regular expression.
- Text
Transformations []RuleGroup Text Transformation - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. If you specify one or more transformations in a rule statement, AWS WAF performs all transformations on the content of the request component identified by
FieldToMatch
, starting from the lowest priority setting, before inspecting the content for a match.
- field
To RuleMatch Group Field To Match - The part of the web request that you want AWS WAF to inspect.
- regex
String String - The string representing the regular expression.
- text
Transformations List<RuleGroup Text Transformation> - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. If you specify one or more transformations in a rule statement, AWS WAF performs all transformations on the content of the request component identified by
FieldToMatch
, starting from the lowest priority setting, before inspecting the content for a match.
- field
To RuleMatch Group Field To Match - The part of the web request that you want AWS WAF to inspect.
- regex
String string - The string representing the regular expression.
- text
Transformations RuleGroup Text Transformation[] - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. If you specify one or more transformations in a rule statement, AWS WAF performs all transformations on the content of the request component identified by
FieldToMatch
, starting from the lowest priority setting, before inspecting the content for a match.
- field_
to_ Rulematch Group Field To Match - The part of the web request that you want AWS WAF to inspect.
- regex_
string str - The string representing the regular expression.
- text_
transformations Sequence[RuleGroup Text Transformation] - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. If you specify one or more transformations in a rule statement, AWS WAF performs all transformations on the content of the request component identified by
FieldToMatch
, starting from the lowest priority setting, before inspecting the content for a match.
- field
To Property MapMatch - The part of the web request that you want AWS WAF to inspect.
- regex
String String - The string representing the regular expression.
- text
Transformations List<Property Map> - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. If you specify one or more transformations in a rule statement, AWS WAF performs all transformations on the content of the request component identified by
FieldToMatch
, starting from the lowest priority setting, before inspecting the content for a match.
RuleGroupRegexPatternSetReferenceStatement
- Arn string
- The Amazon Resource Name (ARN) of the
RegexPatternSet
that this statement references. - Field
To Pulumi.Match Aws Native. Wa Fv2. Inputs. Rule Group Field To Match - The part of the web request that you want AWS WAF to inspect.
- Text
Transformations List<Pulumi.Aws Native. Wa Fv2. Inputs. Rule Group Text Transformation> - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. If you specify one or more transformations in a rule statement, AWS WAF performs all transformations on the content of the request component identified by
FieldToMatch
, starting from the lowest priority setting, before inspecting the content for a match.
- Arn string
- The Amazon Resource Name (ARN) of the
RegexPatternSet
that this statement references. - Field
To RuleMatch Group Field To Match - The part of the web request that you want AWS WAF to inspect.
- Text
Transformations []RuleGroup Text Transformation - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. If you specify one or more transformations in a rule statement, AWS WAF performs all transformations on the content of the request component identified by
FieldToMatch
, starting from the lowest priority setting, before inspecting the content for a match.
- arn String
- The Amazon Resource Name (ARN) of the
RegexPatternSet
that this statement references. - field
To RuleMatch Group Field To Match - The part of the web request that you want AWS WAF to inspect.
- text
Transformations List<RuleGroup Text Transformation> - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. If you specify one or more transformations in a rule statement, AWS WAF performs all transformations on the content of the request component identified by
FieldToMatch
, starting from the lowest priority setting, before inspecting the content for a match.
- arn string
- The Amazon Resource Name (ARN) of the
RegexPatternSet
that this statement references. - field
To RuleMatch Group Field To Match - The part of the web request that you want AWS WAF to inspect.
- text
Transformations RuleGroup Text Transformation[] - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. If you specify one or more transformations in a rule statement, AWS WAF performs all transformations on the content of the request component identified by
FieldToMatch
, starting from the lowest priority setting, before inspecting the content for a match.
- arn str
- The Amazon Resource Name (ARN) of the
RegexPatternSet
that this statement references. - field_
to_ Rulematch Group Field To Match - The part of the web request that you want AWS WAF to inspect.
- text_
transformations Sequence[RuleGroup Text Transformation] - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. If you specify one or more transformations in a rule statement, AWS WAF performs all transformations on the content of the request component identified by
FieldToMatch
, starting from the lowest priority setting, before inspecting the content for a match.
- arn String
- The Amazon Resource Name (ARN) of the
RegexPatternSet
that this statement references. - field
To Property MapMatch - The part of the web request that you want AWS WAF to inspect.
- text
Transformations List<Property Map> - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. If you specify one or more transformations in a rule statement, AWS WAF performs all transformations on the content of the request component identified by
FieldToMatch
, starting from the lowest priority setting, before inspecting the content for a match.
RuleGroupResponseContentType
RuleGroupRule
- Name string
The name of the rule.
If you change the name of a
Rule
after you create it and you want the rule's metric name to reflect the change, update the metric name in the rule'sVisibilityConfig
settings. AWS WAF doesn't automatically update the metric name when you update the rule name.- Priority int
- If you define more than one
Rule
in aWebACL
, AWS WAF evaluates each request against theRules
in order based on the value ofPriority
. AWS WAF processes rules with lower priority first. The priorities don't need to be consecutive, but they must all be different. - Statement
Pulumi.
Aws Native. Wa Fv2. Inputs. Rule Group Statement - The AWS WAF processing statement for the rule, for example
ByteMatchStatement
orSizeConstraintStatement
. - Visibility
Config Pulumi.Aws Native. Wa Fv2. Inputs. Rule Group Visibility Config Defines and enables Amazon CloudWatch metrics and web request sample collection.
If you change the name of a
Rule
after you create it and you want the rule's metric name to reflect the change, update the metric name as well. AWS WAF doesn't automatically update the metric name.- Action
Pulumi.
Aws Native. Wa Fv2. Inputs. Rule Group Rule Action - The action that AWS WAF should take on a web request when it matches the rule statement. Settings at the web ACL level can override the rule action setting.
- Captcha
Config Pulumi.Aws Native. Wa Fv2. Inputs. Rule Group Captcha Config - Specifies how AWS WAF should handle
CAPTCHA
evaluations. If you don't specify this, AWS WAF uses theCAPTCHA
configuration that's defined for the web ACL. - Challenge
Config Pulumi.Aws Native. Wa Fv2. Inputs. Rule Group Challenge Config - Specifies how AWS WAF should handle
Challenge
evaluations. If you don't specify this, AWS WAF uses the challenge configuration that's defined for the web ACL. - Rule
Labels List<Pulumi.Aws Native. Wa Fv2. Inputs. Rule Group Label> - Collection of Rule Labels.
- Name string
The name of the rule.
If you change the name of a
Rule
after you create it and you want the rule's metric name to reflect the change, update the metric name in the rule'sVisibilityConfig
settings. AWS WAF doesn't automatically update the metric name when you update the rule name.- Priority int
- If you define more than one
Rule
in aWebACL
, AWS WAF evaluates each request against theRules
in order based on the value ofPriority
. AWS WAF processes rules with lower priority first. The priorities don't need to be consecutive, but they must all be different. - Statement
Rule
Group Statement - The AWS WAF processing statement for the rule, for example
ByteMatchStatement
orSizeConstraintStatement
. - Visibility
Config RuleGroup Visibility Config Defines and enables Amazon CloudWatch metrics and web request sample collection.
If you change the name of a
Rule
after you create it and you want the rule's metric name to reflect the change, update the metric name as well. AWS WAF doesn't automatically update the metric name.- Action
Rule
Group Rule Action - The action that AWS WAF should take on a web request when it matches the rule statement. Settings at the web ACL level can override the rule action setting.
- Captcha
Config RuleGroup Captcha Config - Specifies how AWS WAF should handle
CAPTCHA
evaluations. If you don't specify this, AWS WAF uses theCAPTCHA
configuration that's defined for the web ACL. - Challenge
Config RuleGroup Challenge Config - Specifies how AWS WAF should handle
Challenge
evaluations. If you don't specify this, AWS WAF uses the challenge configuration that's defined for the web ACL. - Rule
Labels []RuleGroup Label - Collection of Rule Labels.
- name String
The name of the rule.
If you change the name of a
Rule
after you create it and you want the rule's metric name to reflect the change, update the metric name in the rule'sVisibilityConfig
settings. AWS WAF doesn't automatically update the metric name when you update the rule name.- priority Integer
- If you define more than one
Rule
in aWebACL
, AWS WAF evaluates each request against theRules
in order based on the value ofPriority
. AWS WAF processes rules with lower priority first. The priorities don't need to be consecutive, but they must all be different. - statement
Rule
Group Statement - The AWS WAF processing statement for the rule, for example
ByteMatchStatement
orSizeConstraintStatement
. - visibility
Config RuleGroup Visibility Config Defines and enables Amazon CloudWatch metrics and web request sample collection.
If you change the name of a
Rule
after you create it and you want the rule's metric name to reflect the change, update the metric name as well. AWS WAF doesn't automatically update the metric name.- action
Rule
Group Rule Action - The action that AWS WAF should take on a web request when it matches the rule statement. Settings at the web ACL level can override the rule action setting.
- captcha
Config RuleGroup Captcha Config - Specifies how AWS WAF should handle
CAPTCHA
evaluations. If you don't specify this, AWS WAF uses theCAPTCHA
configuration that's defined for the web ACL. - challenge
Config RuleGroup Challenge Config - Specifies how AWS WAF should handle
Challenge
evaluations. If you don't specify this, AWS WAF uses the challenge configuration that's defined for the web ACL. - rule
Labels List<RuleGroup Label> - Collection of Rule Labels.
- name string
The name of the rule.
If you change the name of a
Rule
after you create it and you want the rule's metric name to reflect the change, update the metric name in the rule'sVisibilityConfig
settings. AWS WAF doesn't automatically update the metric name when you update the rule name.- priority number
- If you define more than one
Rule
in aWebACL
, AWS WAF evaluates each request against theRules
in order based on the value ofPriority
. AWS WAF processes rules with lower priority first. The priorities don't need to be consecutive, but they must all be different. - statement
Rule
Group Statement - The AWS WAF processing statement for the rule, for example
ByteMatchStatement
orSizeConstraintStatement
. - visibility
Config RuleGroup Visibility Config Defines and enables Amazon CloudWatch metrics and web request sample collection.
If you change the name of a
Rule
after you create it and you want the rule's metric name to reflect the change, update the metric name as well. AWS WAF doesn't automatically update the metric name.- action
Rule
Group Rule Action - The action that AWS WAF should take on a web request when it matches the rule statement. Settings at the web ACL level can override the rule action setting.
- captcha
Config RuleGroup Captcha Config - Specifies how AWS WAF should handle
CAPTCHA
evaluations. If you don't specify this, AWS WAF uses theCAPTCHA
configuration that's defined for the web ACL. - challenge
Config RuleGroup Challenge Config - Specifies how AWS WAF should handle
Challenge
evaluations. If you don't specify this, AWS WAF uses the challenge configuration that's defined for the web ACL. - rule
Labels RuleGroup Label[] - Collection of Rule Labels.
- name str
The name of the rule.
If you change the name of a
Rule
after you create it and you want the rule's metric name to reflect the change, update the metric name in the rule'sVisibilityConfig
settings. AWS WAF doesn't automatically update the metric name when you update the rule name.- priority int
- If you define more than one
Rule
in aWebACL
, AWS WAF evaluates each request against theRules
in order based on the value ofPriority
. AWS WAF processes rules with lower priority first. The priorities don't need to be consecutive, but they must all be different. - statement
Rule
Group Statement - The AWS WAF processing statement for the rule, for example
ByteMatchStatement
orSizeConstraintStatement
. - visibility_
config RuleGroup Visibility Config Defines and enables Amazon CloudWatch metrics and web request sample collection.
If you change the name of a
Rule
after you create it and you want the rule's metric name to reflect the change, update the metric name as well. AWS WAF doesn't automatically update the metric name.- action
Rule
Group Rule Action - The action that AWS WAF should take on a web request when it matches the rule statement. Settings at the web ACL level can override the rule action setting.
- captcha_
config RuleGroup Captcha Config - Specifies how AWS WAF should handle
CAPTCHA
evaluations. If you don't specify this, AWS WAF uses theCAPTCHA
configuration that's defined for the web ACL. - challenge_
config RuleGroup Challenge Config - Specifies how AWS WAF should handle
Challenge
evaluations. If you don't specify this, AWS WAF uses the challenge configuration that's defined for the web ACL. - rule_
labels Sequence[RuleGroup Label] - Collection of Rule Labels.
- name String
The name of the rule.
If you change the name of a
Rule
after you create it and you want the rule's metric name to reflect the change, update the metric name in the rule'sVisibilityConfig
settings. AWS WAF doesn't automatically update the metric name when you update the rule name.- priority Number
- If you define more than one
Rule
in aWebACL
, AWS WAF evaluates each request against theRules
in order based on the value ofPriority
. AWS WAF processes rules with lower priority first. The priorities don't need to be consecutive, but they must all be different. - statement Property Map
- The AWS WAF processing statement for the rule, for example
ByteMatchStatement
orSizeConstraintStatement
. - visibility
Config Property Map Defines and enables Amazon CloudWatch metrics and web request sample collection.
If you change the name of a
Rule
after you create it and you want the rule's metric name to reflect the change, update the metric name as well. AWS WAF doesn't automatically update the metric name.- action Property Map
- The action that AWS WAF should take on a web request when it matches the rule statement. Settings at the web ACL level can override the rule action setting.
- captcha
Config Property Map - Specifies how AWS WAF should handle
CAPTCHA
evaluations. If you don't specify this, AWS WAF uses theCAPTCHA
configuration that's defined for the web ACL. - challenge
Config Property Map - Specifies how AWS WAF should handle
Challenge
evaluations. If you don't specify this, AWS WAF uses the challenge configuration that's defined for the web ACL. - rule
Labels List<Property Map> - Collection of Rule Labels.
RuleGroupRuleAction
- Allow
Pulumi.
Aws Native. Wa Fv2. Inputs. Rule Group Allow Action - Instructs AWS WAF to allow the web request.
- Block
Pulumi.
Aws Native. Wa Fv2. Inputs. Rule Group Block Action - Instructs AWS WAF to block the web request.
- Captcha
Pulumi.
Aws Native. Wa Fv2. Inputs. Rule Group Captcha Action Specifies that AWS WAF should run a
CAPTCHA
check against the request:- If the request includes a valid, unexpired
CAPTCHA
token, AWS WAF allows the web request inspection to proceed to the next rule, similar to aCountAction
. - If the request doesn't include a valid, unexpired
CAPTCHA
token, AWS WAF discontinues the web ACL evaluation of the request and blocks it from going to its intended destination.
AWS WAF generates a response that it sends back to the client, which includes the following:
- The header
x-amzn-waf-action
with a value ofcaptcha
. - The HTTP status code
405 Method Not Allowed
. - If the request contains an
Accept
header with a value oftext/html
, the response includes aCAPTCHA
challenge.
You can configure the expiration time in the
CaptchaConfig
ImmunityTimeProperty
setting at the rule and web ACL level. The rule setting overrides the web ACL setting.This action option is available for rules. It isn't available for web ACL default actions.
- If the request includes a valid, unexpired
- Challenge
Pulumi.
Aws Native. Wa Fv2. Inputs. Rule Group Challenge Action - Instructs AWS WAF to run a
Challenge
check against the web request. - Count
Pulumi.
Aws Native. Wa Fv2. Inputs. Rule Group Count Action - Instructs AWS WAF to count the web request and then continue evaluating the request using the remaining rules in the web ACL.
- Allow
Rule
Group Allow Action - Instructs AWS WAF to allow the web request.
- Block
Rule
Group Block Action - Instructs AWS WAF to block the web request.
- Captcha
Rule
Group Captcha Action Specifies that AWS WAF should run a
CAPTCHA
check against the request:- If the request includes a valid, unexpired
CAPTCHA
token, AWS WAF allows the web request inspection to proceed to the next rule, similar to aCountAction
. - If the request doesn't include a valid, unexpired
CAPTCHA
token, AWS WAF discontinues the web ACL evaluation of the request and blocks it from going to its intended destination.
AWS WAF generates a response that it sends back to the client, which includes the following:
- The header
x-amzn-waf-action
with a value ofcaptcha
. - The HTTP status code
405 Method Not Allowed
. - If the request contains an
Accept
header with a value oftext/html
, the response includes aCAPTCHA
challenge.
You can configure the expiration time in the
CaptchaConfig
ImmunityTimeProperty
setting at the rule and web ACL level. The rule setting overrides the web ACL setting.This action option is available for rules. It isn't available for web ACL default actions.
- If the request includes a valid, unexpired
- Challenge
Rule
Group Challenge Action - Instructs AWS WAF to run a
Challenge
check against the web request. - Count
Rule
Group Count Action - Instructs AWS WAF to count the web request and then continue evaluating the request using the remaining rules in the web ACL.
- allow
Rule
Group Allow Action - Instructs AWS WAF to allow the web request.
- block
Rule
Group Block Action - Instructs AWS WAF to block the web request.
- captcha
Rule
Group Captcha Action Specifies that AWS WAF should run a
CAPTCHA
check against the request:- If the request includes a valid, unexpired
CAPTCHA
token, AWS WAF allows the web request inspection to proceed to the next rule, similar to aCountAction
. - If the request doesn't include a valid, unexpired
CAPTCHA
token, AWS WAF discontinues the web ACL evaluation of the request and blocks it from going to its intended destination.
AWS WAF generates a response that it sends back to the client, which includes the following:
- The header
x-amzn-waf-action
with a value ofcaptcha
. - The HTTP status code
405 Method Not Allowed
. - If the request contains an
Accept
header with a value oftext/html
, the response includes aCAPTCHA
challenge.
You can configure the expiration time in the
CaptchaConfig
ImmunityTimeProperty
setting at the rule and web ACL level. The rule setting overrides the web ACL setting.This action option is available for rules. It isn't available for web ACL default actions.
- If the request includes a valid, unexpired
- challenge
Rule
Group Challenge Action - Instructs AWS WAF to run a
Challenge
check against the web request. - count
Rule
Group Count Action - Instructs AWS WAF to count the web request and then continue evaluating the request using the remaining rules in the web ACL.
- allow
Rule
Group Allow Action - Instructs AWS WAF to allow the web request.
- block
Rule
Group Block Action - Instructs AWS WAF to block the web request.
- captcha
Rule
Group Captcha Action Specifies that AWS WAF should run a
CAPTCHA
check against the request:- If the request includes a valid, unexpired
CAPTCHA
token, AWS WAF allows the web request inspection to proceed to the next rule, similar to aCountAction
. - If the request doesn't include a valid, unexpired
CAPTCHA
token, AWS WAF discontinues the web ACL evaluation of the request and blocks it from going to its intended destination.
AWS WAF generates a response that it sends back to the client, which includes the following:
- The header
x-amzn-waf-action
with a value ofcaptcha
. - The HTTP status code
405 Method Not Allowed
. - If the request contains an
Accept
header with a value oftext/html
, the response includes aCAPTCHA
challenge.
You can configure the expiration time in the
CaptchaConfig
ImmunityTimeProperty
setting at the rule and web ACL level. The rule setting overrides the web ACL setting.This action option is available for rules. It isn't available for web ACL default actions.
- If the request includes a valid, unexpired
- challenge
Rule
Group Challenge Action - Instructs AWS WAF to run a
Challenge
check against the web request. - count
Rule
Group Count Action - Instructs AWS WAF to count the web request and then continue evaluating the request using the remaining rules in the web ACL.
- allow
Rule
Group Allow Action - Instructs AWS WAF to allow the web request.
- block
Rule
Group Block Action - Instructs AWS WAF to block the web request.
- captcha
Rule
Group Captcha Action Specifies that AWS WAF should run a
CAPTCHA
check against the request:- If the request includes a valid, unexpired
CAPTCHA
token, AWS WAF allows the web request inspection to proceed to the next rule, similar to aCountAction
. - If the request doesn't include a valid, unexpired
CAPTCHA
token, AWS WAF discontinues the web ACL evaluation of the request and blocks it from going to its intended destination.
AWS WAF generates a response that it sends back to the client, which includes the following:
- The header
x-amzn-waf-action
with a value ofcaptcha
. - The HTTP status code
405 Method Not Allowed
. - If the request contains an
Accept
header with a value oftext/html
, the response includes aCAPTCHA
challenge.
You can configure the expiration time in the
CaptchaConfig
ImmunityTimeProperty
setting at the rule and web ACL level. The rule setting overrides the web ACL setting.This action option is available for rules. It isn't available for web ACL default actions.
- If the request includes a valid, unexpired
- challenge
Rule
Group Challenge Action - Instructs AWS WAF to run a
Challenge
check against the web request. - count
Rule
Group Count Action - Instructs AWS WAF to count the web request and then continue evaluating the request using the remaining rules in the web ACL.
- allow Property Map
- Instructs AWS WAF to allow the web request.
- block Property Map
- Instructs AWS WAF to block the web request.
- captcha Property Map
Specifies that AWS WAF should run a
CAPTCHA
check against the request:- If the request includes a valid, unexpired
CAPTCHA
token, AWS WAF allows the web request inspection to proceed to the next rule, similar to aCountAction
. - If the request doesn't include a valid, unexpired
CAPTCHA
token, AWS WAF discontinues the web ACL evaluation of the request and blocks it from going to its intended destination.
AWS WAF generates a response that it sends back to the client, which includes the following:
- The header
x-amzn-waf-action
with a value ofcaptcha
. - The HTTP status code
405 Method Not Allowed
. - If the request contains an
Accept
header with a value oftext/html
, the response includes aCAPTCHA
challenge.
You can configure the expiration time in the
CaptchaConfig
ImmunityTimeProperty
setting at the rule and web ACL level. The rule setting overrides the web ACL setting.This action option is available for rules. It isn't available for web ACL default actions.
- If the request includes a valid, unexpired
- challenge Property Map
- Instructs AWS WAF to run a
Challenge
check against the web request. - count Property Map
- Instructs AWS WAF to count the web request and then continue evaluating the request using the remaining rules in the web ACL.
RuleGroupScope
RuleGroupSensitivityLevel
RuleGroupSizeConstraintStatement
- Comparison
Operator Pulumi.Aws Native. Wa Fv2. Rule Group Size Constraint Statement Comparison Operator - The operator to use to compare the request part to the size setting.
- Field
To Pulumi.Match Aws Native. Wa Fv2. Inputs. Rule Group Field To Match - The part of the web request that you want AWS WAF to inspect.
- Size double
- The size, in byte, to compare to the request part, after any transformations.
- Text
Transformations List<Pulumi.Aws Native. Wa Fv2. Inputs. Rule Group Text Transformation> - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. If you specify one or more transformations in a rule statement, AWS WAF performs all transformations on the content of the request component identified by
FieldToMatch
, starting from the lowest priority setting, before inspecting the content for a match.
- Comparison
Operator RuleGroup Size Constraint Statement Comparison Operator - The operator to use to compare the request part to the size setting.
- Field
To RuleMatch Group Field To Match - The part of the web request that you want AWS WAF to inspect.
- Size float64
- The size, in byte, to compare to the request part, after any transformations.
- Text
Transformations []RuleGroup Text Transformation - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. If you specify one or more transformations in a rule statement, AWS WAF performs all transformations on the content of the request component identified by
FieldToMatch
, starting from the lowest priority setting, before inspecting the content for a match.
- comparison
Operator RuleGroup Size Constraint Statement Comparison Operator - The operator to use to compare the request part to the size setting.
- field
To RuleMatch Group Field To Match - The part of the web request that you want AWS WAF to inspect.
- size Double
- The size, in byte, to compare to the request part, after any transformations.
- text
Transformations List<RuleGroup Text Transformation> - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. If you specify one or more transformations in a rule statement, AWS WAF performs all transformations on the content of the request component identified by
FieldToMatch
, starting from the lowest priority setting, before inspecting the content for a match.
- comparison
Operator RuleGroup Size Constraint Statement Comparison Operator - The operator to use to compare the request part to the size setting.
- field
To RuleMatch Group Field To Match - The part of the web request that you want AWS WAF to inspect.
- size number
- The size, in byte, to compare to the request part, after any transformations.
- text
Transformations RuleGroup Text Transformation[] - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. If you specify one or more transformations in a rule statement, AWS WAF performs all transformations on the content of the request component identified by
FieldToMatch
, starting from the lowest priority setting, before inspecting the content for a match.
- comparison_
operator RuleGroup Size Constraint Statement Comparison Operator - The operator to use to compare the request part to the size setting.
- field_
to_ Rulematch Group Field To Match - The part of the web request that you want AWS WAF to inspect.
- size float
- The size, in byte, to compare to the request part, after any transformations.
- text_
transformations Sequence[RuleGroup Text Transformation] - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. If you specify one or more transformations in a rule statement, AWS WAF performs all transformations on the content of the request component identified by
FieldToMatch
, starting from the lowest priority setting, before inspecting the content for a match.
- comparison
Operator "EQ" | "NE" | "LE" | "LT" | "GE" | "GT" - The operator to use to compare the request part to the size setting.
- field
To Property MapMatch - The part of the web request that you want AWS WAF to inspect.
- size Number
- The size, in byte, to compare to the request part, after any transformations.
- text
Transformations List<Property Map> - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. If you specify one or more transformations in a rule statement, AWS WAF performs all transformations on the content of the request component identified by
FieldToMatch
, starting from the lowest priority setting, before inspecting the content for a match.
RuleGroupSizeConstraintStatementComparisonOperator
RuleGroupSqliMatchStatement
- Field
To Pulumi.Match Aws Native. Wa Fv2. Inputs. Rule Group Field To Match - The part of the web request that you want AWS WAF to inspect.
- Text
Transformations List<Pulumi.Aws Native. Wa Fv2. Inputs. Rule Group Text Transformation> - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. If you specify one or more transformations in a rule statement, AWS WAF performs all transformations on the content of the request component identified by
FieldToMatch
, starting from the lowest priority setting, before inspecting the content for a match. - Sensitivity
Level Pulumi.Aws Native. Wa Fv2. Rule Group Sensitivity Level The sensitivity that you want AWS WAF to use to inspect for SQL injection attacks.
HIGH
detects more attacks, but might generate more false positives, especially if your web requests frequently contain unusual strings. For information about identifying and mitigating false positives, see Testing and tuning in the AWS WAF Developer Guide .LOW
is generally a better choice for resources that already have other protections against SQL injection attacks or that have a low tolerance for false positives.Default:
LOW
- Field
To RuleMatch Group Field To Match - The part of the web request that you want AWS WAF to inspect.
- Text
Transformations []RuleGroup Text Transformation - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. If you specify one or more transformations in a rule statement, AWS WAF performs all transformations on the content of the request component identified by
FieldToMatch
, starting from the lowest priority setting, before inspecting the content for a match. - Sensitivity
Level RuleGroup Sensitivity Level The sensitivity that you want AWS WAF to use to inspect for SQL injection attacks.
HIGH
detects more attacks, but might generate more false positives, especially if your web requests frequently contain unusual strings. For information about identifying and mitigating false positives, see Testing and tuning in the AWS WAF Developer Guide .LOW
is generally a better choice for resources that already have other protections against SQL injection attacks or that have a low tolerance for false positives.Default:
LOW
- field
To RuleMatch Group Field To Match - The part of the web request that you want AWS WAF to inspect.
- text
Transformations List<RuleGroup Text Transformation> - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. If you specify one or more transformations in a rule statement, AWS WAF performs all transformations on the content of the request component identified by
FieldToMatch
, starting from the lowest priority setting, before inspecting the content for a match. - sensitivity
Level RuleGroup Sensitivity Level The sensitivity that you want AWS WAF to use to inspect for SQL injection attacks.
HIGH
detects more attacks, but might generate more false positives, especially if your web requests frequently contain unusual strings. For information about identifying and mitigating false positives, see Testing and tuning in the AWS WAF Developer Guide .LOW
is generally a better choice for resources that already have other protections against SQL injection attacks or that have a low tolerance for false positives.Default:
LOW
- field
To RuleMatch Group Field To Match - The part of the web request that you want AWS WAF to inspect.
- text
Transformations RuleGroup Text Transformation[] - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. If you specify one or more transformations in a rule statement, AWS WAF performs all transformations on the content of the request component identified by
FieldToMatch
, starting from the lowest priority setting, before inspecting the content for a match. - sensitivity
Level RuleGroup Sensitivity Level The sensitivity that you want AWS WAF to use to inspect for SQL injection attacks.
HIGH
detects more attacks, but might generate more false positives, especially if your web requests frequently contain unusual strings. For information about identifying and mitigating false positives, see Testing and tuning in the AWS WAF Developer Guide .LOW
is generally a better choice for resources that already have other protections against SQL injection attacks or that have a low tolerance for false positives.Default:
LOW
- field_
to_ Rulematch Group Field To Match - The part of the web request that you want AWS WAF to inspect.
- text_
transformations Sequence[RuleGroup Text Transformation] - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. If you specify one or more transformations in a rule statement, AWS WAF performs all transformations on the content of the request component identified by
FieldToMatch
, starting from the lowest priority setting, before inspecting the content for a match. - sensitivity_
level RuleGroup Sensitivity Level The sensitivity that you want AWS WAF to use to inspect for SQL injection attacks.
HIGH
detects more attacks, but might generate more false positives, especially if your web requests frequently contain unusual strings. For information about identifying and mitigating false positives, see Testing and tuning in the AWS WAF Developer Guide .LOW
is generally a better choice for resources that already have other protections against SQL injection attacks or that have a low tolerance for false positives.Default:
LOW
- field
To Property MapMatch - The part of the web request that you want AWS WAF to inspect.
- text
Transformations List<Property Map> - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. If you specify one or more transformations in a rule statement, AWS WAF performs all transformations on the content of the request component identified by
FieldToMatch
, starting from the lowest priority setting, before inspecting the content for a match. - sensitivity
Level "LOW" | "HIGH" The sensitivity that you want AWS WAF to use to inspect for SQL injection attacks.
HIGH
detects more attacks, but might generate more false positives, especially if your web requests frequently contain unusual strings. For information about identifying and mitigating false positives, see Testing and tuning in the AWS WAF Developer Guide .LOW
is generally a better choice for resources that already have other protections against SQL injection attacks or that have a low tolerance for false positives.Default:
LOW
RuleGroupStatement
- And
Statement Pulumi.Aws Native. Wa Fv2. Inputs. Rule Group And Statement - A logical rule statement used to combine other rule statements with AND logic. You provide more than one
Statement
within theAndStatement
. - Byte
Match Pulumi.Statement Aws Native. Wa Fv2. Inputs. Rule Group Byte Match Statement - A rule statement that defines a string match search for AWS WAF to apply to web requests. The byte match statement provides the bytes to search for, the location in requests that you want AWS WAF to search, and other settings. The bytes to search for are typically a string that corresponds with ASCII characters. In the AWS WAF console and the developer guide, this is called a string match statement.
- Geo
Match Pulumi.Statement Aws Native. Wa Fv2. Inputs. Rule Group Geo Match Statement A rule statement that labels web requests by country and region and that matches against web requests based on country code. A geo match rule labels every request that it inspects regardless of whether it finds a match.
- To manage requests only by country, you can use this statement by itself and specify the countries that you want to match against in the
CountryCodes
array. - Otherwise, configure your geo match rule with Count action so that it only labels requests. Then, add one or more label match rules to run after the geo match rule and configure them to match against the geographic labels and handle the requests as needed.
AWS WAF labels requests using the alpha-2 country and region codes from the International Organization for Standardization (ISO) 3166 standard. AWS WAF determines the codes using either the IP address in the web request origin or, if you specify it, the address in the geo match
ForwardedIPConfig
.If you use the web request origin, the label formats are
awswaf:clientip:geo:region:<ISO country code>-<ISO region code>
andawswaf:clientip:geo:country:<ISO country code>
.If you use a forwarded IP address, the label formats are
awswaf:forwardedip:geo:region:<ISO country code>-<ISO region code>
andawswaf:forwardedip:geo:country:<ISO country code>
.For additional details, see Geographic match rule statement in the AWS WAF Developer Guide .
- To manage requests only by country, you can use this statement by itself and specify the countries that you want to match against in the
- Ip
Set Pulumi.Reference Statement Aws Native. Wa Fv2. Inputs. Rule Group Ip Set Reference Statement A rule statement used to detect web requests coming from particular IP addresses or address ranges. To use this, create an
IPSet
that specifies the addresses you want to detect, then use the ARN of that set in this statement.Each IP set rule statement references an IP set. You create and maintain the set independent of your rules. This allows you to use the single set in multiple rules. When you update the referenced set, AWS WAF automatically updates all rules that reference it.
- Label
Match Pulumi.Statement Aws Native. Wa Fv2. Inputs. Rule Group Label Match Statement A rule statement to match against labels that have been added to the web request by rules that have already run in the web ACL.
The label match statement provides the label or namespace string to search for. The label string can represent a part or all of the fully qualified label name that had been added to the web request. Fully qualified labels have a prefix, optional namespaces, and label name. The prefix identifies the rule group or web ACL context of the rule that added the label. If you do not provide the fully qualified name in your label match string, AWS WAF performs the search for labels that were added in the same context as the label match statement.
- Not
Statement Pulumi.Aws Native. Wa Fv2. Inputs. Rule Group Not Statement - A logical rule statement used to negate the results of another rule statement. You provide one
Statement
within theNotStatement
. - Or
Statement Pulumi.Aws Native. Wa Fv2. Inputs. Rule Group Or Statement - A logical rule statement used to combine other rule statements with OR logic. You provide more than one
Statement
within theOrStatement
. - Rate
Based Pulumi.Statement Aws Native. Wa Fv2. Inputs. Rule Group Rate Based Statement A rate-based rule counts incoming requests and rate limits requests when they are coming at too fast a rate. The rule categorizes requests according to your aggregation criteria, collects them into aggregation instances, and counts and rate limits the requests for each instance.
If you change any of these settings in a rule that's currently in use, the change resets the rule's rate limiting counts. This can pause the rule's rate limiting activities for up to a minute.
You can specify individual aggregation keys, like IP address or HTTP method. You can also specify aggregation key combinations, like IP address and HTTP method, or HTTP method, query argument, and cookie.
Each unique set of values for the aggregation keys that you specify is a separate aggregation instance, with the value from each key contributing to the aggregation instance definition.
For example, assume the rule evaluates web requests with the following IP address and HTTP method values:
- IP address 10.1.1.1, HTTP method POST
- IP address 10.1.1.1, HTTP method GET
- IP address 127.0.0.0, HTTP method POST
- IP address 10.1.1.1, HTTP method GET
The rule would create different aggregation instances according to your aggregation criteria, for example:
If the aggregation criteria is just the IP address, then each individual address is an aggregation instance, and AWS WAF counts requests separately for each. The aggregation instances and request counts for our example would be the following:
IP address 10.1.1.1: count 3
IP address 127.0.0.0: count 1
If the aggregation criteria is HTTP method, then each individual HTTP method is an aggregation instance. The aggregation instances and request counts for our example would be the following:
HTTP method POST: count 2
HTTP method GET: count 2
If the aggregation criteria is IP address and HTTP method, then each IP address and each HTTP method would contribute to the combined aggregation instance. The aggregation instances and request counts for our example would be the following:
IP address 10.1.1.1, HTTP method POST: count 1
IP address 10.1.1.1, HTTP method GET: count 2
IP address 127.0.0.0, HTTP method POST: count 1
For any n-tuple of aggregation keys, each unique combination of values for the keys defines a separate aggregation instance, which AWS WAF counts and rate-limits individually.
You can optionally nest another statement inside the rate-based statement, to narrow the scope of the rule so that it only counts and rate limits requests that match the nested statement. You can use this nested scope-down statement in conjunction with your aggregation key specifications or you can just count and rate limit all requests that match the scope-down statement, without additional aggregation. When you choose to just manage all requests that match a scope-down statement, the aggregation instance is singular for the rule.
You cannot nest a
RateBasedStatement
inside another statement, for example inside aNotStatement
orOrStatement
. You can define aRateBasedStatement
inside a web ACL and inside a rule group.For additional information about the options, see Rate limiting web requests using rate-based rules in the AWS WAF Developer Guide .
If you only aggregate on the individual IP address or forwarded IP address, you can retrieve the list of IP addresses that AWS WAF is currently rate limiting for a rule through the API call
GetRateBasedStatementManagedKeys
. This option is not available for other aggregation configurations.AWS WAF tracks and manages web requests separately for each instance of a rate-based rule that you use. For example, if you provide the same rate-based rule settings in two web ACLs, each of the two rule statements represents a separate instance of the rate-based rule and gets its own tracking and management by AWS WAF . If you define a rate-based rule inside a rule group, and then use that rule group in multiple places, each use creates a separate instance of the rate-based rule that gets its own tracking and management by AWS WAF .
- Regex
Match Pulumi.Statement Aws Native. Wa Fv2. Inputs. Rule Group Regex Match Statement - A rule statement used to search web request components for a match against a single regular expression.
- Regex
Pattern Pulumi.Set Reference Statement Aws Native. Wa Fv2. Inputs. Rule Group Regex Pattern Set Reference Statement A rule statement used to search web request components for matches with regular expressions. To use this, create a
RegexPatternSet
that specifies the expressions that you want to detect, then use the ARN of that set in this statement. A web request matches the pattern set rule statement if the request component matches any of the patterns in the set.Each regex pattern set rule statement references a regex pattern set. You create and maintain the set independent of your rules. This allows you to use the single set in multiple rules. When you update the referenced set, AWS WAF automatically updates all rules that reference it.
- Size
Constraint Pulumi.Statement Aws Native. Wa Fv2. Inputs. Rule Group Size Constraint Statement A rule statement that compares a number of bytes against the size of a request component, using a comparison operator, such as greater than (>) or less than (<). For example, you can use a size constraint statement to look for query strings that are longer than 100 bytes.
If you configure AWS WAF to inspect the request body, AWS WAF inspects only the number of bytes in the body up to the limit for the web ACL and protected resource type. If you know that the request body for your web requests should never exceed the inspection limit, you can use a size constraint statement to block requests that have a larger request body size. For more information about the inspection limits, see
Body
andJsonBody
settings for theFieldToMatch
data type.If you choose URI for the value of Part of the request to filter on, the slash (/) in the URI counts as one character. For example, the URI
/logo.jpg
is nine characters long.- Sqli
Match Pulumi.Statement Aws Native. Wa Fv2. Inputs. Rule Group Sqli Match Statement - A rule statement that inspects for malicious SQL code. Attackers insert malicious SQL code into web requests to do things like modify your database or extract data from it.
- Xss
Match Pulumi.Statement Aws Native. Wa Fv2. Inputs. Rule Group Xss Match Statement - A rule statement that inspects for cross-site scripting (XSS) attacks. In XSS attacks, the attacker uses vulnerabilities in a benign website as a vehicle to inject malicious client-site scripts into other legitimate web browsers.
- And
Statement RuleGroup And Statement - A logical rule statement used to combine other rule statements with AND logic. You provide more than one
Statement
within theAndStatement
. - Byte
Match RuleStatement Group Byte Match Statement - A rule statement that defines a string match search for AWS WAF to apply to web requests. The byte match statement provides the bytes to search for, the location in requests that you want AWS WAF to search, and other settings. The bytes to search for are typically a string that corresponds with ASCII characters. In the AWS WAF console and the developer guide, this is called a string match statement.
- Geo
Match RuleStatement Group Geo Match Statement A rule statement that labels web requests by country and region and that matches against web requests based on country code. A geo match rule labels every request that it inspects regardless of whether it finds a match.
- To manage requests only by country, you can use this statement by itself and specify the countries that you want to match against in the
CountryCodes
array. - Otherwise, configure your geo match rule with Count action so that it only labels requests. Then, add one or more label match rules to run after the geo match rule and configure them to match against the geographic labels and handle the requests as needed.
AWS WAF labels requests using the alpha-2 country and region codes from the International Organization for Standardization (ISO) 3166 standard. AWS WAF determines the codes using either the IP address in the web request origin or, if you specify it, the address in the geo match
ForwardedIPConfig
.If you use the web request origin, the label formats are
awswaf:clientip:geo:region:<ISO country code>-<ISO region code>
andawswaf:clientip:geo:country:<ISO country code>
.If you use a forwarded IP address, the label formats are
awswaf:forwardedip:geo:region:<ISO country code>-<ISO region code>
andawswaf:forwardedip:geo:country:<ISO country code>
.For additional details, see Geographic match rule statement in the AWS WAF Developer Guide .
- To manage requests only by country, you can use this statement by itself and specify the countries that you want to match against in the
- Ip
Set RuleReference Statement Group Ip Set Reference Statement A rule statement used to detect web requests coming from particular IP addresses or address ranges. To use this, create an
IPSet
that specifies the addresses you want to detect, then use the ARN of that set in this statement.Each IP set rule statement references an IP set. You create and maintain the set independent of your rules. This allows you to use the single set in multiple rules. When you update the referenced set, AWS WAF automatically updates all rules that reference it.
- Label
Match RuleStatement Group Label Match Statement A rule statement to match against labels that have been added to the web request by rules that have already run in the web ACL.
The label match statement provides the label or namespace string to search for. The label string can represent a part or all of the fully qualified label name that had been added to the web request. Fully qualified labels have a prefix, optional namespaces, and label name. The prefix identifies the rule group or web ACL context of the rule that added the label. If you do not provide the fully qualified name in your label match string, AWS WAF performs the search for labels that were added in the same context as the label match statement.
- Not
Statement RuleGroup Not Statement - A logical rule statement used to negate the results of another rule statement. You provide one
Statement
within theNotStatement
. - Or
Statement RuleGroup Or Statement - A logical rule statement used to combine other rule statements with OR logic. You provide more than one
Statement
within theOrStatement
. - Rate
Based RuleStatement Group Rate Based Statement A rate-based rule counts incoming requests and rate limits requests when they are coming at too fast a rate. The rule categorizes requests according to your aggregation criteria, collects them into aggregation instances, and counts and rate limits the requests for each instance.
If you change any of these settings in a rule that's currently in use, the change resets the rule's rate limiting counts. This can pause the rule's rate limiting activities for up to a minute.
You can specify individual aggregation keys, like IP address or HTTP method. You can also specify aggregation key combinations, like IP address and HTTP method, or HTTP method, query argument, and cookie.
Each unique set of values for the aggregation keys that you specify is a separate aggregation instance, with the value from each key contributing to the aggregation instance definition.
For example, assume the rule evaluates web requests with the following IP address and HTTP method values:
- IP address 10.1.1.1, HTTP method POST
- IP address 10.1.1.1, HTTP method GET
- IP address 127.0.0.0, HTTP method POST
- IP address 10.1.1.1, HTTP method GET
The rule would create different aggregation instances according to your aggregation criteria, for example:
If the aggregation criteria is just the IP address, then each individual address is an aggregation instance, and AWS WAF counts requests separately for each. The aggregation instances and request counts for our example would be the following:
IP address 10.1.1.1: count 3
IP address 127.0.0.0: count 1
If the aggregation criteria is HTTP method, then each individual HTTP method is an aggregation instance. The aggregation instances and request counts for our example would be the following:
HTTP method POST: count 2
HTTP method GET: count 2
If the aggregation criteria is IP address and HTTP method, then each IP address and each HTTP method would contribute to the combined aggregation instance. The aggregation instances and request counts for our example would be the following:
IP address 10.1.1.1, HTTP method POST: count 1
IP address 10.1.1.1, HTTP method GET: count 2
IP address 127.0.0.0, HTTP method POST: count 1
For any n-tuple of aggregation keys, each unique combination of values for the keys defines a separate aggregation instance, which AWS WAF counts and rate-limits individually.
You can optionally nest another statement inside the rate-based statement, to narrow the scope of the rule so that it only counts and rate limits requests that match the nested statement. You can use this nested scope-down statement in conjunction with your aggregation key specifications or you can just count and rate limit all requests that match the scope-down statement, without additional aggregation. When you choose to just manage all requests that match a scope-down statement, the aggregation instance is singular for the rule.
You cannot nest a
RateBasedStatement
inside another statement, for example inside aNotStatement
orOrStatement
. You can define aRateBasedStatement
inside a web ACL and inside a rule group.For additional information about the options, see Rate limiting web requests using rate-based rules in the AWS WAF Developer Guide .
If you only aggregate on the individual IP address or forwarded IP address, you can retrieve the list of IP addresses that AWS WAF is currently rate limiting for a rule through the API call
GetRateBasedStatementManagedKeys
. This option is not available for other aggregation configurations.AWS WAF tracks and manages web requests separately for each instance of a rate-based rule that you use. For example, if you provide the same rate-based rule settings in two web ACLs, each of the two rule statements represents a separate instance of the rate-based rule and gets its own tracking and management by AWS WAF . If you define a rate-based rule inside a rule group, and then use that rule group in multiple places, each use creates a separate instance of the rate-based rule that gets its own tracking and management by AWS WAF .
- Regex
Match RuleStatement Group Regex Match Statement - A rule statement used to search web request components for a match against a single regular expression.
- Regex
Pattern RuleSet Reference Statement Group Regex Pattern Set Reference Statement A rule statement used to search web request components for matches with regular expressions. To use this, create a
RegexPatternSet
that specifies the expressions that you want to detect, then use the ARN of that set in this statement. A web request matches the pattern set rule statement if the request component matches any of the patterns in the set.Each regex pattern set rule statement references a regex pattern set. You create and maintain the set independent of your rules. This allows you to use the single set in multiple rules. When you update the referenced set, AWS WAF automatically updates all rules that reference it.
- Size
Constraint RuleStatement Group Size Constraint Statement A rule statement that compares a number of bytes against the size of a request component, using a comparison operator, such as greater than (>) or less than (<). For example, you can use a size constraint statement to look for query strings that are longer than 100 bytes.
If you configure AWS WAF to inspect the request body, AWS WAF inspects only the number of bytes in the body up to the limit for the web ACL and protected resource type. If you know that the request body for your web requests should never exceed the inspection limit, you can use a size constraint statement to block requests that have a larger request body size. For more information about the inspection limits, see
Body
andJsonBody
settings for theFieldToMatch
data type.If you choose URI for the value of Part of the request to filter on, the slash (/) in the URI counts as one character. For example, the URI
/logo.jpg
is nine characters long.- Sqli
Match RuleStatement Group Sqli Match Statement - A rule statement that inspects for malicious SQL code. Attackers insert malicious SQL code into web requests to do things like modify your database or extract data from it.
- Xss
Match RuleStatement Group Xss Match Statement - A rule statement that inspects for cross-site scripting (XSS) attacks. In XSS attacks, the attacker uses vulnerabilities in a benign website as a vehicle to inject malicious client-site scripts into other legitimate web browsers.
- and
Statement RuleGroup And Statement - A logical rule statement used to combine other rule statements with AND logic. You provide more than one
Statement
within theAndStatement
. - byte
Match RuleStatement Group Byte Match Statement - A rule statement that defines a string match search for AWS WAF to apply to web requests. The byte match statement provides the bytes to search for, the location in requests that you want AWS WAF to search, and other settings. The bytes to search for are typically a string that corresponds with ASCII characters. In the AWS WAF console and the developer guide, this is called a string match statement.
- geo
Match RuleStatement Group Geo Match Statement A rule statement that labels web requests by country and region and that matches against web requests based on country code. A geo match rule labels every request that it inspects regardless of whether it finds a match.
- To manage requests only by country, you can use this statement by itself and specify the countries that you want to match against in the
CountryCodes
array. - Otherwise, configure your geo match rule with Count action so that it only labels requests. Then, add one or more label match rules to run after the geo match rule and configure them to match against the geographic labels and handle the requests as needed.
AWS WAF labels requests using the alpha-2 country and region codes from the International Organization for Standardization (ISO) 3166 standard. AWS WAF determines the codes using either the IP address in the web request origin or, if you specify it, the address in the geo match
ForwardedIPConfig
.If you use the web request origin, the label formats are
awswaf:clientip:geo:region:<ISO country code>-<ISO region code>
andawswaf:clientip:geo:country:<ISO country code>
.If you use a forwarded IP address, the label formats are
awswaf:forwardedip:geo:region:<ISO country code>-<ISO region code>
andawswaf:forwardedip:geo:country:<ISO country code>
.For additional details, see Geographic match rule statement in the AWS WAF Developer Guide .
- To manage requests only by country, you can use this statement by itself and specify the countries that you want to match against in the
- ip
Set RuleReference Statement Group Ip Set Reference Statement A rule statement used to detect web requests coming from particular IP addresses or address ranges. To use this, create an
IPSet
that specifies the addresses you want to detect, then use the ARN of that set in this statement.Each IP set rule statement references an IP set. You create and maintain the set independent of your rules. This allows you to use the single set in multiple rules. When you update the referenced set, AWS WAF automatically updates all rules that reference it.
- label
Match RuleStatement Group Label Match Statement A rule statement to match against labels that have been added to the web request by rules that have already run in the web ACL.
The label match statement provides the label or namespace string to search for. The label string can represent a part or all of the fully qualified label name that had been added to the web request. Fully qualified labels have a prefix, optional namespaces, and label name. The prefix identifies the rule group or web ACL context of the rule that added the label. If you do not provide the fully qualified name in your label match string, AWS WAF performs the search for labels that were added in the same context as the label match statement.
- not
Statement RuleGroup Not Statement - A logical rule statement used to negate the results of another rule statement. You provide one
Statement
within theNotStatement
. - or
Statement RuleGroup Or Statement - A logical rule statement used to combine other rule statements with OR logic. You provide more than one
Statement
within theOrStatement
. - rate
Based RuleStatement Group Rate Based Statement A rate-based rule counts incoming requests and rate limits requests when they are coming at too fast a rate. The rule categorizes requests according to your aggregation criteria, collects them into aggregation instances, and counts and rate limits the requests for each instance.
If you change any of these settings in a rule that's currently in use, the change resets the rule's rate limiting counts. This can pause the rule's rate limiting activities for up to a minute.
You can specify individual aggregation keys, like IP address or HTTP method. You can also specify aggregation key combinations, like IP address and HTTP method, or HTTP method, query argument, and cookie.
Each unique set of values for the aggregation keys that you specify is a separate aggregation instance, with the value from each key contributing to the aggregation instance definition.
For example, assume the rule evaluates web requests with the following IP address and HTTP method values:
- IP address 10.1.1.1, HTTP method POST
- IP address 10.1.1.1, HTTP method GET
- IP address 127.0.0.0, HTTP method POST
- IP address 10.1.1.1, HTTP method GET
The rule would create different aggregation instances according to your aggregation criteria, for example:
If the aggregation criteria is just the IP address, then each individual address is an aggregation instance, and AWS WAF counts requests separately for each. The aggregation instances and request counts for our example would be the following:
IP address 10.1.1.1: count 3
IP address 127.0.0.0: count 1
If the aggregation criteria is HTTP method, then each individual HTTP method is an aggregation instance. The aggregation instances and request counts for our example would be the following:
HTTP method POST: count 2
HTTP method GET: count 2
If the aggregation criteria is IP address and HTTP method, then each IP address and each HTTP method would contribute to the combined aggregation instance. The aggregation instances and request counts for our example would be the following:
IP address 10.1.1.1, HTTP method POST: count 1
IP address 10.1.1.1, HTTP method GET: count 2
IP address 127.0.0.0, HTTP method POST: count 1
For any n-tuple of aggregation keys, each unique combination of values for the keys defines a separate aggregation instance, which AWS WAF counts and rate-limits individually.
You can optionally nest another statement inside the rate-based statement, to narrow the scope of the rule so that it only counts and rate limits requests that match the nested statement. You can use this nested scope-down statement in conjunction with your aggregation key specifications or you can just count and rate limit all requests that match the scope-down statement, without additional aggregation. When you choose to just manage all requests that match a scope-down statement, the aggregation instance is singular for the rule.
You cannot nest a
RateBasedStatement
inside another statement, for example inside aNotStatement
orOrStatement
. You can define aRateBasedStatement
inside a web ACL and inside a rule group.For additional information about the options, see Rate limiting web requests using rate-based rules in the AWS WAF Developer Guide .
If you only aggregate on the individual IP address or forwarded IP address, you can retrieve the list of IP addresses that AWS WAF is currently rate limiting for a rule through the API call
GetRateBasedStatementManagedKeys
. This option is not available for other aggregation configurations.AWS WAF tracks and manages web requests separately for each instance of a rate-based rule that you use. For example, if you provide the same rate-based rule settings in two web ACLs, each of the two rule statements represents a separate instance of the rate-based rule and gets its own tracking and management by AWS WAF . If you define a rate-based rule inside a rule group, and then use that rule group in multiple places, each use creates a separate instance of the rate-based rule that gets its own tracking and management by AWS WAF .
- regex
Match RuleStatement Group Regex Match Statement - A rule statement used to search web request components for a match against a single regular expression.
- regex
Pattern RuleSet Reference Statement Group Regex Pattern Set Reference Statement A rule statement used to search web request components for matches with regular expressions. To use this, create a
RegexPatternSet
that specifies the expressions that you want to detect, then use the ARN of that set in this statement. A web request matches the pattern set rule statement if the request component matches any of the patterns in the set.Each regex pattern set rule statement references a regex pattern set. You create and maintain the set independent of your rules. This allows you to use the single set in multiple rules. When you update the referenced set, AWS WAF automatically updates all rules that reference it.
- size
Constraint RuleStatement Group Size Constraint Statement A rule statement that compares a number of bytes against the size of a request component, using a comparison operator, such as greater than (>) or less than (<). For example, you can use a size constraint statement to look for query strings that are longer than 100 bytes.
If you configure AWS WAF to inspect the request body, AWS WAF inspects only the number of bytes in the body up to the limit for the web ACL and protected resource type. If you know that the request body for your web requests should never exceed the inspection limit, you can use a size constraint statement to block requests that have a larger request body size. For more information about the inspection limits, see
Body
andJsonBody
settings for theFieldToMatch
data type.If you choose URI for the value of Part of the request to filter on, the slash (/) in the URI counts as one character. For example, the URI
/logo.jpg
is nine characters long.- sqli
Match RuleStatement Group Sqli Match Statement - A rule statement that inspects for malicious SQL code. Attackers insert malicious SQL code into web requests to do things like modify your database or extract data from it.
- xss
Match RuleStatement Group Xss Match Statement - A rule statement that inspects for cross-site scripting (XSS) attacks. In XSS attacks, the attacker uses vulnerabilities in a benign website as a vehicle to inject malicious client-site scripts into other legitimate web browsers.
- and
Statement RuleGroup And Statement - A logical rule statement used to combine other rule statements with AND logic. You provide more than one
Statement
within theAndStatement
. - byte
Match RuleStatement Group Byte Match Statement - A rule statement that defines a string match search for AWS WAF to apply to web requests. The byte match statement provides the bytes to search for, the location in requests that you want AWS WAF to search, and other settings. The bytes to search for are typically a string that corresponds with ASCII characters. In the AWS WAF console and the developer guide, this is called a string match statement.
- geo
Match RuleStatement Group Geo Match Statement A rule statement that labels web requests by country and region and that matches against web requests based on country code. A geo match rule labels every request that it inspects regardless of whether it finds a match.
- To manage requests only by country, you can use this statement by itself and specify the countries that you want to match against in the
CountryCodes
array. - Otherwise, configure your geo match rule with Count action so that it only labels requests. Then, add one or more label match rules to run after the geo match rule and configure them to match against the geographic labels and handle the requests as needed.
AWS WAF labels requests using the alpha-2 country and region codes from the International Organization for Standardization (ISO) 3166 standard. AWS WAF determines the codes using either the IP address in the web request origin or, if you specify it, the address in the geo match
ForwardedIPConfig
.If you use the web request origin, the label formats are
awswaf:clientip:geo:region:<ISO country code>-<ISO region code>
andawswaf:clientip:geo:country:<ISO country code>
.If you use a forwarded IP address, the label formats are
awswaf:forwardedip:geo:region:<ISO country code>-<ISO region code>
andawswaf:forwardedip:geo:country:<ISO country code>
.For additional details, see Geographic match rule statement in the AWS WAF Developer Guide .
- To manage requests only by country, you can use this statement by itself and specify the countries that you want to match against in the
- ip
Set RuleReference Statement Group Ip Set Reference Statement A rule statement used to detect web requests coming from particular IP addresses or address ranges. To use this, create an
IPSet
that specifies the addresses you want to detect, then use the ARN of that set in this statement.Each IP set rule statement references an IP set. You create and maintain the set independent of your rules. This allows you to use the single set in multiple rules. When you update the referenced set, AWS WAF automatically updates all rules that reference it.
- label
Match RuleStatement Group Label Match Statement A rule statement to match against labels that have been added to the web request by rules that have already run in the web ACL.
The label match statement provides the label or namespace string to search for. The label string can represent a part or all of the fully qualified label name that had been added to the web request. Fully qualified labels have a prefix, optional namespaces, and label name. The prefix identifies the rule group or web ACL context of the rule that added the label. If you do not provide the fully qualified name in your label match string, AWS WAF performs the search for labels that were added in the same context as the label match statement.
- not
Statement RuleGroup Not Statement - A logical rule statement used to negate the results of another rule statement. You provide one
Statement
within theNotStatement
. - or
Statement RuleGroup Or Statement - A logical rule statement used to combine other rule statements with OR logic. You provide more than one
Statement
within theOrStatement
. - rate
Based RuleStatement Group Rate Based Statement A rate-based rule counts incoming requests and rate limits requests when they are coming at too fast a rate. The rule categorizes requests according to your aggregation criteria, collects them into aggregation instances, and counts and rate limits the requests for each instance.
If you change any of these settings in a rule that's currently in use, the change resets the rule's rate limiting counts. This can pause the rule's rate limiting activities for up to a minute.
You can specify individual aggregation keys, like IP address or HTTP method. You can also specify aggregation key combinations, like IP address and HTTP method, or HTTP method, query argument, and cookie.
Each unique set of values for the aggregation keys that you specify is a separate aggregation instance, with the value from each key contributing to the aggregation instance definition.
For example, assume the rule evaluates web requests with the following IP address and HTTP method values:
- IP address 10.1.1.1, HTTP method POST
- IP address 10.1.1.1, HTTP method GET
- IP address 127.0.0.0, HTTP method POST
- IP address 10.1.1.1, HTTP method GET
The rule would create different aggregation instances according to your aggregation criteria, for example:
If the aggregation criteria is just the IP address, then each individual address is an aggregation instance, and AWS WAF counts requests separately for each. The aggregation instances and request counts for our example would be the following:
IP address 10.1.1.1: count 3
IP address 127.0.0.0: count 1
If the aggregation criteria is HTTP method, then each individual HTTP method is an aggregation instance. The aggregation instances and request counts for our example would be the following:
HTTP method POST: count 2
HTTP method GET: count 2
If the aggregation criteria is IP address and HTTP method, then each IP address and each HTTP method would contribute to the combined aggregation instance. The aggregation instances and request counts for our example would be the following:
IP address 10.1.1.1, HTTP method POST: count 1
IP address 10.1.1.1, HTTP method GET: count 2
IP address 127.0.0.0, HTTP method POST: count 1
For any n-tuple of aggregation keys, each unique combination of values for the keys defines a separate aggregation instance, which AWS WAF counts and rate-limits individually.
You can optionally nest another statement inside the rate-based statement, to narrow the scope of the rule so that it only counts and rate limits requests that match the nested statement. You can use this nested scope-down statement in conjunction with your aggregation key specifications or you can just count and rate limit all requests that match the scope-down statement, without additional aggregation. When you choose to just manage all requests that match a scope-down statement, the aggregation instance is singular for the rule.
You cannot nest a
RateBasedStatement
inside another statement, for example inside aNotStatement
orOrStatement
. You can define aRateBasedStatement
inside a web ACL and inside a rule group.For additional information about the options, see Rate limiting web requests using rate-based rules in the AWS WAF Developer Guide .
If you only aggregate on the individual IP address or forwarded IP address, you can retrieve the list of IP addresses that AWS WAF is currently rate limiting for a rule through the API call
GetRateBasedStatementManagedKeys
. This option is not available for other aggregation configurations.AWS WAF tracks and manages web requests separately for each instance of a rate-based rule that you use. For example, if you provide the same rate-based rule settings in two web ACLs, each of the two rule statements represents a separate instance of the rate-based rule and gets its own tracking and management by AWS WAF . If you define a rate-based rule inside a rule group, and then use that rule group in multiple places, each use creates a separate instance of the rate-based rule that gets its own tracking and management by AWS WAF .
- regex
Match RuleStatement Group Regex Match Statement - A rule statement used to search web request components for a match against a single regular expression.
- regex
Pattern RuleSet Reference Statement Group Regex Pattern Set Reference Statement A rule statement used to search web request components for matches with regular expressions. To use this, create a
RegexPatternSet
that specifies the expressions that you want to detect, then use the ARN of that set in this statement. A web request matches the pattern set rule statement if the request component matches any of the patterns in the set.Each regex pattern set rule statement references a regex pattern set. You create and maintain the set independent of your rules. This allows you to use the single set in multiple rules. When you update the referenced set, AWS WAF automatically updates all rules that reference it.
- size
Constraint RuleStatement Group Size Constraint Statement A rule statement that compares a number of bytes against the size of a request component, using a comparison operator, such as greater than (>) or less than (<). For example, you can use a size constraint statement to look for query strings that are longer than 100 bytes.
If you configure AWS WAF to inspect the request body, AWS WAF inspects only the number of bytes in the body up to the limit for the web ACL and protected resource type. If you know that the request body for your web requests should never exceed the inspection limit, you can use a size constraint statement to block requests that have a larger request body size. For more information about the inspection limits, see
Body
andJsonBody
settings for theFieldToMatch
data type.If you choose URI for the value of Part of the request to filter on, the slash (/) in the URI counts as one character. For example, the URI
/logo.jpg
is nine characters long.- sqli
Match RuleStatement Group Sqli Match Statement - A rule statement that inspects for malicious SQL code. Attackers insert malicious SQL code into web requests to do things like modify your database or extract data from it.
- xss
Match RuleStatement Group Xss Match Statement - A rule statement that inspects for cross-site scripting (XSS) attacks. In XSS attacks, the attacker uses vulnerabilities in a benign website as a vehicle to inject malicious client-site scripts into other legitimate web browsers.
- and_
statement RuleGroup And Statement - A logical rule statement used to combine other rule statements with AND logic. You provide more than one
Statement
within theAndStatement
. - byte_
match_ Rulestatement Group Byte Match Statement - A rule statement that defines a string match search for AWS WAF to apply to web requests. The byte match statement provides the bytes to search for, the location in requests that you want AWS WAF to search, and other settings. The bytes to search for are typically a string that corresponds with ASCII characters. In the AWS WAF console and the developer guide, this is called a string match statement.
- geo_
match_ Rulestatement Group Geo Match Statement A rule statement that labels web requests by country and region and that matches against web requests based on country code. A geo match rule labels every request that it inspects regardless of whether it finds a match.
- To manage requests only by country, you can use this statement by itself and specify the countries that you want to match against in the
CountryCodes
array. - Otherwise, configure your geo match rule with Count action so that it only labels requests. Then, add one or more label match rules to run after the geo match rule and configure them to match against the geographic labels and handle the requests as needed.
AWS WAF labels requests using the alpha-2 country and region codes from the International Organization for Standardization (ISO) 3166 standard. AWS WAF determines the codes using either the IP address in the web request origin or, if you specify it, the address in the geo match
ForwardedIPConfig
.If you use the web request origin, the label formats are
awswaf:clientip:geo:region:<ISO country code>-<ISO region code>
andawswaf:clientip:geo:country:<ISO country code>
.If you use a forwarded IP address, the label formats are
awswaf:forwardedip:geo:region:<ISO country code>-<ISO region code>
andawswaf:forwardedip:geo:country:<ISO country code>
.For additional details, see Geographic match rule statement in the AWS WAF Developer Guide .
- To manage requests only by country, you can use this statement by itself and specify the countries that you want to match against in the
- ip_
set_ Rulereference_ statement Group Ip Set Reference Statement A rule statement used to detect web requests coming from particular IP addresses or address ranges. To use this, create an
IPSet
that specifies the addresses you want to detect, then use the ARN of that set in this statement.Each IP set rule statement references an IP set. You create and maintain the set independent of your rules. This allows you to use the single set in multiple rules. When you update the referenced set, AWS WAF automatically updates all rules that reference it.
- label_
match_ Rulestatement Group Label Match Statement A rule statement to match against labels that have been added to the web request by rules that have already run in the web ACL.
The label match statement provides the label or namespace string to search for. The label string can represent a part or all of the fully qualified label name that had been added to the web request. Fully qualified labels have a prefix, optional namespaces, and label name. The prefix identifies the rule group or web ACL context of the rule that added the label. If you do not provide the fully qualified name in your label match string, AWS WAF performs the search for labels that were added in the same context as the label match statement.
- not_
statement RuleGroup Not Statement - A logical rule statement used to negate the results of another rule statement. You provide one
Statement
within theNotStatement
. - or_
statement RuleGroup Or Statement - A logical rule statement used to combine other rule statements with OR logic. You provide more than one
Statement
within theOrStatement
. - rate_
based_ Rulestatement Group Rate Based Statement A rate-based rule counts incoming requests and rate limits requests when they are coming at too fast a rate. The rule categorizes requests according to your aggregation criteria, collects them into aggregation instances, and counts and rate limits the requests for each instance.
If you change any of these settings in a rule that's currently in use, the change resets the rule's rate limiting counts. This can pause the rule's rate limiting activities for up to a minute.
You can specify individual aggregation keys, like IP address or HTTP method. You can also specify aggregation key combinations, like IP address and HTTP method, or HTTP method, query argument, and cookie.
Each unique set of values for the aggregation keys that you specify is a separate aggregation instance, with the value from each key contributing to the aggregation instance definition.
For example, assume the rule evaluates web requests with the following IP address and HTTP method values:
- IP address 10.1.1.1, HTTP method POST
- IP address 10.1.1.1, HTTP method GET
- IP address 127.0.0.0, HTTP method POST
- IP address 10.1.1.1, HTTP method GET
The rule would create different aggregation instances according to your aggregation criteria, for example:
If the aggregation criteria is just the IP address, then each individual address is an aggregation instance, and AWS WAF counts requests separately for each. The aggregation instances and request counts for our example would be the following:
IP address 10.1.1.1: count 3
IP address 127.0.0.0: count 1
If the aggregation criteria is HTTP method, then each individual HTTP method is an aggregation instance. The aggregation instances and request counts for our example would be the following:
HTTP method POST: count 2
HTTP method GET: count 2
If the aggregation criteria is IP address and HTTP method, then each IP address and each HTTP method would contribute to the combined aggregation instance. The aggregation instances and request counts for our example would be the following:
IP address 10.1.1.1, HTTP method POST: count 1
IP address 10.1.1.1, HTTP method GET: count 2
IP address 127.0.0.0, HTTP method POST: count 1
For any n-tuple of aggregation keys, each unique combination of values for the keys defines a separate aggregation instance, which AWS WAF counts and rate-limits individually.
You can optionally nest another statement inside the rate-based statement, to narrow the scope of the rule so that it only counts and rate limits requests that match the nested statement. You can use this nested scope-down statement in conjunction with your aggregation key specifications or you can just count and rate limit all requests that match the scope-down statement, without additional aggregation. When you choose to just manage all requests that match a scope-down statement, the aggregation instance is singular for the rule.
You cannot nest a
RateBasedStatement
inside another statement, for example inside aNotStatement
orOrStatement
. You can define aRateBasedStatement
inside a web ACL and inside a rule group.For additional information about the options, see Rate limiting web requests using rate-based rules in the AWS WAF Developer Guide .
If you only aggregate on the individual IP address or forwarded IP address, you can retrieve the list of IP addresses that AWS WAF is currently rate limiting for a rule through the API call
GetRateBasedStatementManagedKeys
. This option is not available for other aggregation configurations.AWS WAF tracks and manages web requests separately for each instance of a rate-based rule that you use. For example, if you provide the same rate-based rule settings in two web ACLs, each of the two rule statements represents a separate instance of the rate-based rule and gets its own tracking and management by AWS WAF . If you define a rate-based rule inside a rule group, and then use that rule group in multiple places, each use creates a separate instance of the rate-based rule that gets its own tracking and management by AWS WAF .
- regex_
match_ Rulestatement Group Regex Match Statement - A rule statement used to search web request components for a match against a single regular expression.
- regex_
pattern_ Ruleset_ reference_ statement Group Regex Pattern Set Reference Statement A rule statement used to search web request components for matches with regular expressions. To use this, create a
RegexPatternSet
that specifies the expressions that you want to detect, then use the ARN of that set in this statement. A web request matches the pattern set rule statement if the request component matches any of the patterns in the set.Each regex pattern set rule statement references a regex pattern set. You create and maintain the set independent of your rules. This allows you to use the single set in multiple rules. When you update the referenced set, AWS WAF automatically updates all rules that reference it.
- size_
constraint_ Rulestatement Group Size Constraint Statement A rule statement that compares a number of bytes against the size of a request component, using a comparison operator, such as greater than (>) or less than (<). For example, you can use a size constraint statement to look for query strings that are longer than 100 bytes.
If you configure AWS WAF to inspect the request body, AWS WAF inspects only the number of bytes in the body up to the limit for the web ACL and protected resource type. If you know that the request body for your web requests should never exceed the inspection limit, you can use a size constraint statement to block requests that have a larger request body size. For more information about the inspection limits, see
Body
andJsonBody
settings for theFieldToMatch
data type.If you choose URI for the value of Part of the request to filter on, the slash (/) in the URI counts as one character. For example, the URI
/logo.jpg
is nine characters long.- sqli_
match_ Rulestatement Group Sqli Match Statement - A rule statement that inspects for malicious SQL code. Attackers insert malicious SQL code into web requests to do things like modify your database or extract data from it.
- xss_
match_ Rulestatement Group Xss Match Statement - A rule statement that inspects for cross-site scripting (XSS) attacks. In XSS attacks, the attacker uses vulnerabilities in a benign website as a vehicle to inject malicious client-site scripts into other legitimate web browsers.
- and
Statement Property Map - A logical rule statement used to combine other rule statements with AND logic. You provide more than one
Statement
within theAndStatement
. - byte
Match Property MapStatement - A rule statement that defines a string match search for AWS WAF to apply to web requests. The byte match statement provides the bytes to search for, the location in requests that you want AWS WAF to search, and other settings. The bytes to search for are typically a string that corresponds with ASCII characters. In the AWS WAF console and the developer guide, this is called a string match statement.
- geo
Match Property MapStatement A rule statement that labels web requests by country and region and that matches against web requests based on country code. A geo match rule labels every request that it inspects regardless of whether it finds a match.
- To manage requests only by country, you can use this statement by itself and specify the countries that you want to match against in the
CountryCodes
array. - Otherwise, configure your geo match rule with Count action so that it only labels requests. Then, add one or more label match rules to run after the geo match rule and configure them to match against the geographic labels and handle the requests as needed.
AWS WAF labels requests using the alpha-2 country and region codes from the International Organization for Standardization (ISO) 3166 standard. AWS WAF determines the codes using either the IP address in the web request origin or, if you specify it, the address in the geo match
ForwardedIPConfig
.If you use the web request origin, the label formats are
awswaf:clientip:geo:region:<ISO country code>-<ISO region code>
andawswaf:clientip:geo:country:<ISO country code>
.If you use a forwarded IP address, the label formats are
awswaf:forwardedip:geo:region:<ISO country code>-<ISO region code>
andawswaf:forwardedip:geo:country:<ISO country code>
.For additional details, see Geographic match rule statement in the AWS WAF Developer Guide .
- To manage requests only by country, you can use this statement by itself and specify the countries that you want to match against in the
- ip
Set Property MapReference Statement A rule statement used to detect web requests coming from particular IP addresses or address ranges. To use this, create an
IPSet
that specifies the addresses you want to detect, then use the ARN of that set in this statement.Each IP set rule statement references an IP set. You create and maintain the set independent of your rules. This allows you to use the single set in multiple rules. When you update the referenced set, AWS WAF automatically updates all rules that reference it.
- label
Match Property MapStatement A rule statement to match against labels that have been added to the web request by rules that have already run in the web ACL.
The label match statement provides the label or namespace string to search for. The label string can represent a part or all of the fully qualified label name that had been added to the web request. Fully qualified labels have a prefix, optional namespaces, and label name. The prefix identifies the rule group or web ACL context of the rule that added the label. If you do not provide the fully qualified name in your label match string, AWS WAF performs the search for labels that were added in the same context as the label match statement.
- not
Statement Property Map - A logical rule statement used to negate the results of another rule statement. You provide one
Statement
within theNotStatement
. - or
Statement Property Map - A logical rule statement used to combine other rule statements with OR logic. You provide more than one
Statement
within theOrStatement
. - rate
Based Property MapStatement A rate-based rule counts incoming requests and rate limits requests when they are coming at too fast a rate. The rule categorizes requests according to your aggregation criteria, collects them into aggregation instances, and counts and rate limits the requests for each instance.
If you change any of these settings in a rule that's currently in use, the change resets the rule's rate limiting counts. This can pause the rule's rate limiting activities for up to a minute.
You can specify individual aggregation keys, like IP address or HTTP method. You can also specify aggregation key combinations, like IP address and HTTP method, or HTTP method, query argument, and cookie.
Each unique set of values for the aggregation keys that you specify is a separate aggregation instance, with the value from each key contributing to the aggregation instance definition.
For example, assume the rule evaluates web requests with the following IP address and HTTP method values:
- IP address 10.1.1.1, HTTP method POST
- IP address 10.1.1.1, HTTP method GET
- IP address 127.0.0.0, HTTP method POST
- IP address 10.1.1.1, HTTP method GET
The rule would create different aggregation instances according to your aggregation criteria, for example:
If the aggregation criteria is just the IP address, then each individual address is an aggregation instance, and AWS WAF counts requests separately for each. The aggregation instances and request counts for our example would be the following:
IP address 10.1.1.1: count 3
IP address 127.0.0.0: count 1
If the aggregation criteria is HTTP method, then each individual HTTP method is an aggregation instance. The aggregation instances and request counts for our example would be the following:
HTTP method POST: count 2
HTTP method GET: count 2
If the aggregation criteria is IP address and HTTP method, then each IP address and each HTTP method would contribute to the combined aggregation instance. The aggregation instances and request counts for our example would be the following:
IP address 10.1.1.1, HTTP method POST: count 1
IP address 10.1.1.1, HTTP method GET: count 2
IP address 127.0.0.0, HTTP method POST: count 1
For any n-tuple of aggregation keys, each unique combination of values for the keys defines a separate aggregation instance, which AWS WAF counts and rate-limits individually.
You can optionally nest another statement inside the rate-based statement, to narrow the scope of the rule so that it only counts and rate limits requests that match the nested statement. You can use this nested scope-down statement in conjunction with your aggregation key specifications or you can just count and rate limit all requests that match the scope-down statement, without additional aggregation. When you choose to just manage all requests that match a scope-down statement, the aggregation instance is singular for the rule.
You cannot nest a
RateBasedStatement
inside another statement, for example inside aNotStatement
orOrStatement
. You can define aRateBasedStatement
inside a web ACL and inside a rule group.For additional information about the options, see Rate limiting web requests using rate-based rules in the AWS WAF Developer Guide .
If you only aggregate on the individual IP address or forwarded IP address, you can retrieve the list of IP addresses that AWS WAF is currently rate limiting for a rule through the API call
GetRateBasedStatementManagedKeys
. This option is not available for other aggregation configurations.AWS WAF tracks and manages web requests separately for each instance of a rate-based rule that you use. For example, if you provide the same rate-based rule settings in two web ACLs, each of the two rule statements represents a separate instance of the rate-based rule and gets its own tracking and management by AWS WAF . If you define a rate-based rule inside a rule group, and then use that rule group in multiple places, each use creates a separate instance of the rate-based rule that gets its own tracking and management by AWS WAF .
- regex
Match Property MapStatement - A rule statement used to search web request components for a match against a single regular expression.
- regex
Pattern Property MapSet Reference Statement A rule statement used to search web request components for matches with regular expressions. To use this, create a
RegexPatternSet
that specifies the expressions that you want to detect, then use the ARN of that set in this statement. A web request matches the pattern set rule statement if the request component matches any of the patterns in the set.Each regex pattern set rule statement references a regex pattern set. You create and maintain the set independent of your rules. This allows you to use the single set in multiple rules. When you update the referenced set, AWS WAF automatically updates all rules that reference it.
- size
Constraint Property MapStatement A rule statement that compares a number of bytes against the size of a request component, using a comparison operator, such as greater than (>) or less than (<). For example, you can use a size constraint statement to look for query strings that are longer than 100 bytes.
If you configure AWS WAF to inspect the request body, AWS WAF inspects only the number of bytes in the body up to the limit for the web ACL and protected resource type. If you know that the request body for your web requests should never exceed the inspection limit, you can use a size constraint statement to block requests that have a larger request body size. For more information about the inspection limits, see
Body
andJsonBody
settings for theFieldToMatch
data type.If you choose URI for the value of Part of the request to filter on, the slash (/) in the URI counts as one character. For example, the URI
/logo.jpg
is nine characters long.- sqli
Match Property MapStatement - A rule statement that inspects for malicious SQL code. Attackers insert malicious SQL code into web requests to do things like modify your database or extract data from it.
- xss
Match Property MapStatement - A rule statement that inspects for cross-site scripting (XSS) attacks. In XSS attacks, the attacker uses vulnerabilities in a benign website as a vehicle to inject malicious client-site scripts into other legitimate web browsers.
RuleGroupTextTransformation
- Priority int
- Sets the relative processing order for multiple transformations. AWS WAF processes all transformations, from lowest priority to highest, before inspecting the transformed content. The priorities don't need to be consecutive, but they must all be different.
- Type
Pulumi.
Aws Native. Wa Fv2. Rule Group Text Transformation Type - For detailed descriptions of each of the transformation types, see Text transformations in the AWS WAF Developer Guide .
- Priority int
- Sets the relative processing order for multiple transformations. AWS WAF processes all transformations, from lowest priority to highest, before inspecting the transformed content. The priorities don't need to be consecutive, but they must all be different.
- Type
Rule
Group Text Transformation Type - For detailed descriptions of each of the transformation types, see Text transformations in the AWS WAF Developer Guide .
- priority Integer
- Sets the relative processing order for multiple transformations. AWS WAF processes all transformations, from lowest priority to highest, before inspecting the transformed content. The priorities don't need to be consecutive, but they must all be different.
- type
Rule
Group Text Transformation Type - For detailed descriptions of each of the transformation types, see Text transformations in the AWS WAF Developer Guide .
- priority number
- Sets the relative processing order for multiple transformations. AWS WAF processes all transformations, from lowest priority to highest, before inspecting the transformed content. The priorities don't need to be consecutive, but they must all be different.
- type
Rule
Group Text Transformation Type - For detailed descriptions of each of the transformation types, see Text transformations in the AWS WAF Developer Guide .
- priority int
- Sets the relative processing order for multiple transformations. AWS WAF processes all transformations, from lowest priority to highest, before inspecting the transformed content. The priorities don't need to be consecutive, but they must all be different.
- type
Rule
Group Text Transformation Type - For detailed descriptions of each of the transformation types, see Text transformations in the AWS WAF Developer Guide .
- priority Number
- Sets the relative processing order for multiple transformations. AWS WAF processes all transformations, from lowest priority to highest, before inspecting the transformed content. The priorities don't need to be consecutive, but they must all be different.
- type "NONE" | "COMPRESS_WHITE_SPACE" | "HTML_ENTITY_DECODE" | "LOWERCASE" | "CMD_LINE" | "URL_DECODE" | "BASE64_DECODE" | "HEX_DECODE" | "MD5" | "REPLACE_COMMENTS" | "ESCAPE_SEQ_DECODE" | "SQL_HEX_DECODE" | "CSS_DECODE" | "JS_DECODE" | "NORMALIZE_PATH" | "NORMALIZE_PATH_WIN" | "REMOVE_NULLS" | "REPLACE_NULLS" | "BASE64_DECODE_EXT" | "URL_DECODE_UNI" | "UTF8_TO_UNICODE"
- For detailed descriptions of each of the transformation types, see Text transformations in the AWS WAF Developer Guide .
RuleGroupTextTransformationType
RuleGroupVisibilityConfig
- Cloud
Watch boolMetrics Enabled Indicates whether the associated resource sends metrics to Amazon CloudWatch. For the list of available metrics, see AWS WAF Metrics in the AWS WAF Developer Guide .
For web ACLs, the metrics are for web requests that have the web ACL default action applied. AWS WAF applies the default action to web requests that pass the inspection of all rules in the web ACL without being either allowed or blocked. For more information, see The web ACL default action in the AWS WAF Developer Guide .
- Metric
Name string - A name of the Amazon CloudWatch metric dimension. The name can contain only the characters: A-Z, a-z, 0-9, - (hyphen), and _ (underscore). The name can be from one to 128 characters long. It can't contain whitespace or metric names that are reserved for AWS WAF , for example
All
andDefault_Action
. - Sampled
Requests boolEnabled Indicates whether AWS WAF should store a sampling of the web requests that match the rules. You can view the sampled requests through the AWS WAF console.
Request sampling doesn't provide a field redaction option, and any field redaction that you specify in your logging configuration doesn't affect sampling. The only way to exclude fields from request sampling is by disabling sampling in the web ACL visibility configuration.
- Cloud
Watch boolMetrics Enabled Indicates whether the associated resource sends metrics to Amazon CloudWatch. For the list of available metrics, see AWS WAF Metrics in the AWS WAF Developer Guide .
For web ACLs, the metrics are for web requests that have the web ACL default action applied. AWS WAF applies the default action to web requests that pass the inspection of all rules in the web ACL without being either allowed or blocked. For more information, see The web ACL default action in the AWS WAF Developer Guide .
- Metric
Name string - A name of the Amazon CloudWatch metric dimension. The name can contain only the characters: A-Z, a-z, 0-9, - (hyphen), and _ (underscore). The name can be from one to 128 characters long. It can't contain whitespace or metric names that are reserved for AWS WAF , for example
All
andDefault_Action
. - Sampled
Requests boolEnabled Indicates whether AWS WAF should store a sampling of the web requests that match the rules. You can view the sampled requests through the AWS WAF console.
Request sampling doesn't provide a field redaction option, and any field redaction that you specify in your logging configuration doesn't affect sampling. The only way to exclude fields from request sampling is by disabling sampling in the web ACL visibility configuration.
- cloud
Watch BooleanMetrics Enabled Indicates whether the associated resource sends metrics to Amazon CloudWatch. For the list of available metrics, see AWS WAF Metrics in the AWS WAF Developer Guide .
For web ACLs, the metrics are for web requests that have the web ACL default action applied. AWS WAF applies the default action to web requests that pass the inspection of all rules in the web ACL without being either allowed or blocked. For more information, see The web ACL default action in the AWS WAF Developer Guide .
- metric
Name String - A name of the Amazon CloudWatch metric dimension. The name can contain only the characters: A-Z, a-z, 0-9, - (hyphen), and _ (underscore). The name can be from one to 128 characters long. It can't contain whitespace or metric names that are reserved for AWS WAF , for example
All
andDefault_Action
. - sampled
Requests BooleanEnabled Indicates whether AWS WAF should store a sampling of the web requests that match the rules. You can view the sampled requests through the AWS WAF console.
Request sampling doesn't provide a field redaction option, and any field redaction that you specify in your logging configuration doesn't affect sampling. The only way to exclude fields from request sampling is by disabling sampling in the web ACL visibility configuration.
- cloud
Watch booleanMetrics Enabled Indicates whether the associated resource sends metrics to Amazon CloudWatch. For the list of available metrics, see AWS WAF Metrics in the AWS WAF Developer Guide .
For web ACLs, the metrics are for web requests that have the web ACL default action applied. AWS WAF applies the default action to web requests that pass the inspection of all rules in the web ACL without being either allowed or blocked. For more information, see The web ACL default action in the AWS WAF Developer Guide .
- metric
Name string - A name of the Amazon CloudWatch metric dimension. The name can contain only the characters: A-Z, a-z, 0-9, - (hyphen), and _ (underscore). The name can be from one to 128 characters long. It can't contain whitespace or metric names that are reserved for AWS WAF , for example
All
andDefault_Action
. - sampled
Requests booleanEnabled Indicates whether AWS WAF should store a sampling of the web requests that match the rules. You can view the sampled requests through the AWS WAF console.
Request sampling doesn't provide a field redaction option, and any field redaction that you specify in your logging configuration doesn't affect sampling. The only way to exclude fields from request sampling is by disabling sampling in the web ACL visibility configuration.
- cloud_
watch_ boolmetrics_ enabled Indicates whether the associated resource sends metrics to Amazon CloudWatch. For the list of available metrics, see AWS WAF Metrics in the AWS WAF Developer Guide .
For web ACLs, the metrics are for web requests that have the web ACL default action applied. AWS WAF applies the default action to web requests that pass the inspection of all rules in the web ACL without being either allowed or blocked. For more information, see The web ACL default action in the AWS WAF Developer Guide .
- metric_
name str - A name of the Amazon CloudWatch metric dimension. The name can contain only the characters: A-Z, a-z, 0-9, - (hyphen), and _ (underscore). The name can be from one to 128 characters long. It can't contain whitespace or metric names that are reserved for AWS WAF , for example
All
andDefault_Action
. - sampled_
requests_ boolenabled Indicates whether AWS WAF should store a sampling of the web requests that match the rules. You can view the sampled requests through the AWS WAF console.
Request sampling doesn't provide a field redaction option, and any field redaction that you specify in your logging configuration doesn't affect sampling. The only way to exclude fields from request sampling is by disabling sampling in the web ACL visibility configuration.
- cloud
Watch BooleanMetrics Enabled Indicates whether the associated resource sends metrics to Amazon CloudWatch. For the list of available metrics, see AWS WAF Metrics in the AWS WAF Developer Guide .
For web ACLs, the metrics are for web requests that have the web ACL default action applied. AWS WAF applies the default action to web requests that pass the inspection of all rules in the web ACL without being either allowed or blocked. For more information, see The web ACL default action in the AWS WAF Developer Guide .
- metric
Name String - A name of the Amazon CloudWatch metric dimension. The name can contain only the characters: A-Z, a-z, 0-9, - (hyphen), and _ (underscore). The name can be from one to 128 characters long. It can't contain whitespace or metric names that are reserved for AWS WAF , for example
All
andDefault_Action
. - sampled
Requests BooleanEnabled Indicates whether AWS WAF should store a sampling of the web requests that match the rules. You can view the sampled requests through the AWS WAF console.
Request sampling doesn't provide a field redaction option, and any field redaction that you specify in your logging configuration doesn't affect sampling. The only way to exclude fields from request sampling is by disabling sampling in the web ACL visibility configuration.
RuleGroupXssMatchStatement
- Field
To Pulumi.Match Aws Native. Wa Fv2. Inputs. Rule Group Field To Match - The part of the web request that you want AWS WAF to inspect.
- Text
Transformations List<Pulumi.Aws Native. Wa Fv2. Inputs. Rule Group Text Transformation> - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. If you specify one or more transformations in a rule statement, AWS WAF performs all transformations on the content of the request component identified by
FieldToMatch
, starting from the lowest priority setting, before inspecting the content for a match.
- Field
To RuleMatch Group Field To Match - The part of the web request that you want AWS WAF to inspect.
- Text
Transformations []RuleGroup Text Transformation - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. If you specify one or more transformations in a rule statement, AWS WAF performs all transformations on the content of the request component identified by
FieldToMatch
, starting from the lowest priority setting, before inspecting the content for a match.
- field
To RuleMatch Group Field To Match - The part of the web request that you want AWS WAF to inspect.
- text
Transformations List<RuleGroup Text Transformation> - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. If you specify one or more transformations in a rule statement, AWS WAF performs all transformations on the content of the request component identified by
FieldToMatch
, starting from the lowest priority setting, before inspecting the content for a match.
- field
To RuleMatch Group Field To Match - The part of the web request that you want AWS WAF to inspect.
- text
Transformations RuleGroup Text Transformation[] - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. If you specify one or more transformations in a rule statement, AWS WAF performs all transformations on the content of the request component identified by
FieldToMatch
, starting from the lowest priority setting, before inspecting the content for a match.
- field_
to_ Rulematch Group Field To Match - The part of the web request that you want AWS WAF to inspect.
- text_
transformations Sequence[RuleGroup Text Transformation] - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. If you specify one or more transformations in a rule statement, AWS WAF performs all transformations on the content of the request component identified by
FieldToMatch
, starting from the lowest priority setting, before inspecting the content for a match.
- field
To Property MapMatch - The part of the web request that you want AWS WAF to inspect.
- text
Transformations List<Property Map> - Text transformations eliminate some of the unusual formatting that attackers use in web requests in an effort to bypass detection. If you specify one or more transformations in a rule statement, AWS WAF performs all transformations on the content of the request component identified by
FieldToMatch
, starting from the lowest priority setting, before inspecting the content for a match.
Tag
Package Details
- Repository
- AWS Native pulumi/pulumi-aws-native
- License
- Apache-2.0
AWS Native is in preview. AWS Classic is fully supported.