1. Packages
  2. AWS
  3. API Docs
  4. wafv2
  5. WebAclRuleGroupAssociation
Viewing docs for AWS v7.22.0
published on Wednesday, Mar 11, 2026 by Pulumi
aws logo
Viewing docs for AWS v7.22.0
published on Wednesday, Mar 11, 2026 by Pulumi

    Associates a WAFv2 Rule Group (custom or managed) with a Web ACL by adding a rule that references the Rule Group. Use this resource to apply the rules defined in a Rule Group to a Web ACL without duplicating rule definitions.

    This resource supports both:

    • Custom Rule Groups: User-created rule groups that you manage within your AWS account
    • Managed Rule Groups: Pre-configured rule groups provided by AWS or third-party vendors

    !> Warning: Verify the rule names in your rule_action_overrides carefully. With managed rule groups, WAF silently ignores any override that uses an invalid rule name. With customer-owned rule groups, invalid rule names in your overrides will cause web ACL updates to fail. An invalid rule name is any name that doesn’t exactly match the case-sensitive name of an existing rule in the rule group.

    !> Warning: Using this resource will cause the associated Web ACL resource to show configuration drift in the rule argument unless you add lifecycle {<span pulumi-lang-nodejs=" ignoreChanges " pulumi-lang-dotnet=" IgnoreChanges " pulumi-lang-go=" ignoreChanges " pulumi-lang-python=" ignore_changes " pulumi-lang-yaml=" ignoreChanges " pulumi-lang-java=" ignoreChanges "> ignore_changes </span>= [rule] } to the Web ACL resource configuration. This is because this resource modifies the Web ACL’s rules outside of the Web ACL resource’s direct management.

    Note: This resource creates a rule within the Web ACL that references the entire Rule Group. The rule group’s individual rules are evaluated as a unit when requests are processed by the Web ACL.

    Example Usage

    Basic Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as aws from "@pulumi/aws";
    
    // Web ACL must use lifecycle.ignore_changes to prevent drift from this resource
    const example = new aws.wafv2.WebAcl("example", {
        name: "example-web-acl",
        scope: "REGIONAL",
        defaultAction: {
            allow: {},
        },
        visibilityConfig: {
            cloudwatchMetricsEnabled: true,
            metricName: "example-web-acl",
            sampledRequestsEnabled: true,
        },
    });
    // Associate a custom rule group
    const exampleWebAclRuleGroupAssociation = new aws.wafv2.WebAclRuleGroupAssociation("example", {
        ruleName: "example-rule-group-rule",
        priority: 100,
        webAclArn: example.arn,
        ruleGroupReference: {
            arn: exampleAwsWafv2RuleGroup.arn,
        },
    });
    
    import pulumi
    import pulumi_aws as aws
    
    # Web ACL must use lifecycle.ignore_changes to prevent drift from this resource
    example = aws.wafv2.WebAcl("example",
        name="example-web-acl",
        scope="REGIONAL",
        default_action={
            "allow": {},
        },
        visibility_config={
            "cloudwatch_metrics_enabled": True,
            "metric_name": "example-web-acl",
            "sampled_requests_enabled": True,
        })
    # Associate a custom rule group
    example_web_acl_rule_group_association = aws.wafv2.WebAclRuleGroupAssociation("example",
        rule_name="example-rule-group-rule",
        priority=100,
        web_acl_arn=example.arn,
        rule_group_reference={
            "arn": example_aws_wafv2_rule_group["arn"],
        })
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/wafv2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		// Web ACL must use lifecycle.ignore_changes to prevent drift from this resource
    		example, err := wafv2.NewWebAcl(ctx, "example", &wafv2.WebAclArgs{
    			Name:  pulumi.String("example-web-acl"),
    			Scope: pulumi.String("REGIONAL"),
    			DefaultAction: &wafv2.WebAclDefaultActionArgs{
    				Allow: &wafv2.WebAclDefaultActionAllowArgs{},
    			},
    			VisibilityConfig: &wafv2.WebAclVisibilityConfigArgs{
    				CloudwatchMetricsEnabled: pulumi.Bool(true),
    				MetricName:               pulumi.String("example-web-acl"),
    				SampledRequestsEnabled:   pulumi.Bool(true),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		// Associate a custom rule group
    		_, err = wafv2.NewWebAclRuleGroupAssociation(ctx, "example", &wafv2.WebAclRuleGroupAssociationArgs{
    			RuleName:  pulumi.String("example-rule-group-rule"),
    			Priority:  pulumi.Int(100),
    			WebAclArn: example.Arn,
    			RuleGroupReference: &wafv2.WebAclRuleGroupAssociationRuleGroupReferenceArgs{
    				Arn: pulumi.Any(exampleAwsWafv2RuleGroup.Arn),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Aws = Pulumi.Aws;
    
    return await Deployment.RunAsync(() => 
    {
        // Web ACL must use lifecycle.ignore_changes to prevent drift from this resource
        var example = new Aws.WafV2.WebAcl("example", new()
        {
            Name = "example-web-acl",
            Scope = "REGIONAL",
            DefaultAction = new Aws.WafV2.Inputs.WebAclDefaultActionArgs
            {
                Allow = null,
            },
            VisibilityConfig = new Aws.WafV2.Inputs.WebAclVisibilityConfigArgs
            {
                CloudwatchMetricsEnabled = true,
                MetricName = "example-web-acl",
                SampledRequestsEnabled = true,
            },
        });
    
        // Associate a custom rule group
        var exampleWebAclRuleGroupAssociation = new Aws.WafV2.WebAclRuleGroupAssociation("example", new()
        {
            RuleName = "example-rule-group-rule",
            Priority = 100,
            WebAclArn = example.Arn,
            RuleGroupReference = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationRuleGroupReferenceArgs
            {
                Arn = exampleAwsWafv2RuleGroup.Arn,
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.aws.wafv2.WebAcl;
    import com.pulumi.aws.wafv2.WebAclArgs;
    import com.pulumi.aws.wafv2.inputs.WebAclDefaultActionArgs;
    import com.pulumi.aws.wafv2.inputs.WebAclDefaultActionAllowArgs;
    import com.pulumi.aws.wafv2.inputs.WebAclVisibilityConfigArgs;
    import com.pulumi.aws.wafv2.WebAclRuleGroupAssociation;
    import com.pulumi.aws.wafv2.WebAclRuleGroupAssociationArgs;
    import com.pulumi.aws.wafv2.inputs.WebAclRuleGroupAssociationRuleGroupReferenceArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            // Web ACL must use lifecycle.ignore_changes to prevent drift from this resource
            var example = new WebAcl("example", WebAclArgs.builder()
                .name("example-web-acl")
                .scope("REGIONAL")
                .defaultAction(WebAclDefaultActionArgs.builder()
                    .allow(WebAclDefaultActionAllowArgs.builder()
                        .build())
                    .build())
                .visibilityConfig(WebAclVisibilityConfigArgs.builder()
                    .cloudwatchMetricsEnabled(true)
                    .metricName("example-web-acl")
                    .sampledRequestsEnabled(true)
                    .build())
                .build());
    
            // Associate a custom rule group
            var exampleWebAclRuleGroupAssociation = new WebAclRuleGroupAssociation("exampleWebAclRuleGroupAssociation", WebAclRuleGroupAssociationArgs.builder()
                .ruleName("example-rule-group-rule")
                .priority(100)
                .webAclArn(example.arn())
                .ruleGroupReference(WebAclRuleGroupAssociationRuleGroupReferenceArgs.builder()
                    .arn(exampleAwsWafv2RuleGroup.arn())
                    .build())
                .build());
    
        }
    }
    
    resources:
      # Web ACL must use lifecycle.ignore_changes to prevent drift from this resource
      example:
        type: aws:wafv2:WebAcl
        properties:
          name: example-web-acl
          scope: REGIONAL
          defaultAction:
            allow: {}
          visibilityConfig:
            cloudwatchMetricsEnabled: true
            metricName: example-web-acl
            sampledRequestsEnabled: true
      # Associate a custom rule group
      exampleWebAclRuleGroupAssociation:
        type: aws:wafv2:WebAclRuleGroupAssociation
        name: example
        properties:
          ruleName: example-rule-group-rule
          priority: 100
          webAclArn: ${example.arn}
          ruleGroupReference:
            arn: ${exampleAwsWafv2RuleGroup.arn}
    

    Managed Rule Group

    import * as pulumi from "@pulumi/pulumi";
    import * as aws from "@pulumi/aws";
    
    const example = new aws.wafv2.WebAclRuleGroupAssociation("example", {
        ruleName: "aws-common-rule-set",
        priority: 50,
        webAclArn: exampleAwsWafv2WebAcl.arn,
        managedRuleGroup: {
            name: "AWSManagedRulesCommonRuleSet",
            vendorName: "AWS",
        },
    });
    
    import pulumi
    import pulumi_aws as aws
    
    example = aws.wafv2.WebAclRuleGroupAssociation("example",
        rule_name="aws-common-rule-set",
        priority=50,
        web_acl_arn=example_aws_wafv2_web_acl["arn"],
        managed_rule_group={
            "name": "AWSManagedRulesCommonRuleSet",
            "vendor_name": "AWS",
        })
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/wafv2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := wafv2.NewWebAclRuleGroupAssociation(ctx, "example", &wafv2.WebAclRuleGroupAssociationArgs{
    			RuleName:  pulumi.String("aws-common-rule-set"),
    			Priority:  pulumi.Int(50),
    			WebAclArn: pulumi.Any(exampleAwsWafv2WebAcl.Arn),
    			ManagedRuleGroup: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupArgs{
    				Name:       pulumi.String("AWSManagedRulesCommonRuleSet"),
    				VendorName: pulumi.String("AWS"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Aws = Pulumi.Aws;
    
    return await Deployment.RunAsync(() => 
    {
        var example = new Aws.WafV2.WebAclRuleGroupAssociation("example", new()
        {
            RuleName = "aws-common-rule-set",
            Priority = 50,
            WebAclArn = exampleAwsWafv2WebAcl.Arn,
            ManagedRuleGroup = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupArgs
            {
                Name = "AWSManagedRulesCommonRuleSet",
                VendorName = "AWS",
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.aws.wafv2.WebAclRuleGroupAssociation;
    import com.pulumi.aws.wafv2.WebAclRuleGroupAssociationArgs;
    import com.pulumi.aws.wafv2.inputs.WebAclRuleGroupAssociationManagedRuleGroupArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var example = new WebAclRuleGroupAssociation("example", WebAclRuleGroupAssociationArgs.builder()
                .ruleName("aws-common-rule-set")
                .priority(50)
                .webAclArn(exampleAwsWafv2WebAcl.arn())
                .managedRuleGroup(WebAclRuleGroupAssociationManagedRuleGroupArgs.builder()
                    .name("AWSManagedRulesCommonRuleSet")
                    .vendorName("AWS")
                    .build())
                .build());
    
        }
    }
    
    resources:
      example:
        type: aws:wafv2:WebAclRuleGroupAssociation
        properties:
          ruleName: aws-common-rule-set
          priority: 50
          webAclArn: ${exampleAwsWafv2WebAcl.arn}
          managedRuleGroup:
            name: AWSManagedRulesCommonRuleSet
            vendorName: AWS
    

    Managed Rule Group With Version

    import * as pulumi from "@pulumi/pulumi";
    import * as aws from "@pulumi/aws";
    
    const example = new aws.wafv2.WebAclRuleGroupAssociation("example", {
        ruleName: "aws-common-rule-set-versioned",
        priority: 60,
        webAclArn: exampleAwsWafv2WebAcl.arn,
        managedRuleGroup: {
            name: "AWSManagedRulesCommonRuleSet",
            vendorName: "AWS",
            version: "Version_1.0",
        },
    });
    
    import pulumi
    import pulumi_aws as aws
    
    example = aws.wafv2.WebAclRuleGroupAssociation("example",
        rule_name="aws-common-rule-set-versioned",
        priority=60,
        web_acl_arn=example_aws_wafv2_web_acl["arn"],
        managed_rule_group={
            "name": "AWSManagedRulesCommonRuleSet",
            "vendor_name": "AWS",
            "version": "Version_1.0",
        })
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/wafv2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := wafv2.NewWebAclRuleGroupAssociation(ctx, "example", &wafv2.WebAclRuleGroupAssociationArgs{
    			RuleName:  pulumi.String("aws-common-rule-set-versioned"),
    			Priority:  pulumi.Int(60),
    			WebAclArn: pulumi.Any(exampleAwsWafv2WebAcl.Arn),
    			ManagedRuleGroup: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupArgs{
    				Name:       pulumi.String("AWSManagedRulesCommonRuleSet"),
    				VendorName: pulumi.String("AWS"),
    				Version:    pulumi.String("Version_1.0"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Aws = Pulumi.Aws;
    
    return await Deployment.RunAsync(() => 
    {
        var example = new Aws.WafV2.WebAclRuleGroupAssociation("example", new()
        {
            RuleName = "aws-common-rule-set-versioned",
            Priority = 60,
            WebAclArn = exampleAwsWafv2WebAcl.Arn,
            ManagedRuleGroup = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupArgs
            {
                Name = "AWSManagedRulesCommonRuleSet",
                VendorName = "AWS",
                Version = "Version_1.0",
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.aws.wafv2.WebAclRuleGroupAssociation;
    import com.pulumi.aws.wafv2.WebAclRuleGroupAssociationArgs;
    import com.pulumi.aws.wafv2.inputs.WebAclRuleGroupAssociationManagedRuleGroupArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var example = new WebAclRuleGroupAssociation("example", WebAclRuleGroupAssociationArgs.builder()
                .ruleName("aws-common-rule-set-versioned")
                .priority(60)
                .webAclArn(exampleAwsWafv2WebAcl.arn())
                .managedRuleGroup(WebAclRuleGroupAssociationManagedRuleGroupArgs.builder()
                    .name("AWSManagedRulesCommonRuleSet")
                    .vendorName("AWS")
                    .version("Version_1.0")
                    .build())
                .build());
    
        }
    }
    
    resources:
      example:
        type: aws:wafv2:WebAclRuleGroupAssociation
        properties:
          ruleName: aws-common-rule-set-versioned
          priority: 60
          webAclArn: ${exampleAwsWafv2WebAcl.arn}
          managedRuleGroup:
            name: AWSManagedRulesCommonRuleSet
            vendorName: AWS
            version: Version_1.0
    

    Managed Rule Group With Rule Action Overrides

    import * as pulumi from "@pulumi/pulumi";
    import * as aws from "@pulumi/aws";
    
    const example = new aws.wafv2.WebAclRuleGroupAssociation("example", {
        ruleName: "aws-common-rule-set-with-overrides",
        priority: 70,
        webAclArn: exampleAwsWafv2WebAcl.arn,
        managedRuleGroup: {
            name: "AWSManagedRulesCommonRuleSet",
            vendorName: "AWS",
            ruleActionOverrides: [
                {
                    name: "GenericRFI_BODY",
                    actionToUse: {
                        count: {
                            customRequestHandling: {
                                insertHeaders: [{
                                    name: "X-RFI-Override",
                                    value: "counted",
                                }],
                            },
                        },
                    },
                },
                {
                    name: "SizeRestrictions_BODY",
                    actionToUse: {
                        captcha: {},
                    },
                },
            ],
        },
    });
    
    import pulumi
    import pulumi_aws as aws
    
    example = aws.wafv2.WebAclRuleGroupAssociation("example",
        rule_name="aws-common-rule-set-with-overrides",
        priority=70,
        web_acl_arn=example_aws_wafv2_web_acl["arn"],
        managed_rule_group={
            "name": "AWSManagedRulesCommonRuleSet",
            "vendor_name": "AWS",
            "rule_action_overrides": [
                {
                    "name": "GenericRFI_BODY",
                    "action_to_use": {
                        "count": {
                            "custom_request_handling": {
                                "insert_headers": [{
                                    "name": "X-RFI-Override",
                                    "value": "counted",
                                }],
                            },
                        },
                    },
                },
                {
                    "name": "SizeRestrictions_BODY",
                    "action_to_use": {
                        "captcha": {},
                    },
                },
            ],
        })
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/wafv2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := wafv2.NewWebAclRuleGroupAssociation(ctx, "example", &wafv2.WebAclRuleGroupAssociationArgs{
    			RuleName:  pulumi.String("aws-common-rule-set-with-overrides"),
    			Priority:  pulumi.Int(70),
    			WebAclArn: pulumi.Any(exampleAwsWafv2WebAcl.Arn),
    			ManagedRuleGroup: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupArgs{
    				Name:       pulumi.String("AWSManagedRulesCommonRuleSet"),
    				VendorName: pulumi.String("AWS"),
    				RuleActionOverrides: wafv2.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideArray{
    					&wafv2.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideArgs{
    						Name: pulumi.String("GenericRFI_BODY"),
    						ActionToUse: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseArgs{
    							Count: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseCountArgs{
    								CustomRequestHandling: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseCountCustomRequestHandlingArgs{
    									InsertHeaders: wafv2.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseCountCustomRequestHandlingInsertHeaderArray{
    										&wafv2.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseCountCustomRequestHandlingInsertHeaderArgs{
    											Name:  pulumi.String("X-RFI-Override"),
    											Value: pulumi.String("counted"),
    										},
    									},
    								},
    							},
    						},
    					},
    					&wafv2.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideArgs{
    						Name: pulumi.String("SizeRestrictions_BODY"),
    						ActionToUse: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseArgs{
    							Captcha: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseCaptchaArgs{},
    						},
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Aws = Pulumi.Aws;
    
    return await Deployment.RunAsync(() => 
    {
        var example = new Aws.WafV2.WebAclRuleGroupAssociation("example", new()
        {
            RuleName = "aws-common-rule-set-with-overrides",
            Priority = 70,
            WebAclArn = exampleAwsWafv2WebAcl.Arn,
            ManagedRuleGroup = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupArgs
            {
                Name = "AWSManagedRulesCommonRuleSet",
                VendorName = "AWS",
                RuleActionOverrides = new[]
                {
                    new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideArgs
                    {
                        Name = "GenericRFI_BODY",
                        ActionToUse = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseArgs
                        {
                            Count = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseCountArgs
                            {
                                CustomRequestHandling = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseCountCustomRequestHandlingArgs
                                {
                                    InsertHeaders = new[]
                                    {
                                        new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseCountCustomRequestHandlingInsertHeaderArgs
                                        {
                                            Name = "X-RFI-Override",
                                            Value = "counted",
                                        },
                                    },
                                },
                            },
                        },
                    },
                    new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideArgs
                    {
                        Name = "SizeRestrictions_BODY",
                        ActionToUse = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseArgs
                        {
                            Captcha = null,
                        },
                    },
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.aws.wafv2.WebAclRuleGroupAssociation;
    import com.pulumi.aws.wafv2.WebAclRuleGroupAssociationArgs;
    import com.pulumi.aws.wafv2.inputs.WebAclRuleGroupAssociationManagedRuleGroupArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var example = new WebAclRuleGroupAssociation("example", WebAclRuleGroupAssociationArgs.builder()
                .ruleName("aws-common-rule-set-with-overrides")
                .priority(70)
                .webAclArn(exampleAwsWafv2WebAcl.arn())
                .managedRuleGroup(WebAclRuleGroupAssociationManagedRuleGroupArgs.builder()
                    .name("AWSManagedRulesCommonRuleSet")
                    .vendorName("AWS")
                    .ruleActionOverrides(                
                        WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideArgs.builder()
                            .name("GenericRFI_BODY")
                            .actionToUse(WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseArgs.builder()
                                .count(WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseCountArgs.builder()
                                    .customRequestHandling(WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseCountCustomRequestHandlingArgs.builder()
                                        .insertHeaders(WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseCountCustomRequestHandlingInsertHeaderArgs.builder()
                                            .name("X-RFI-Override")
                                            .value("counted")
                                            .build())
                                        .build())
                                    .build())
                                .build())
                            .build(),
                        WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideArgs.builder()
                            .name("SizeRestrictions_BODY")
                            .actionToUse(WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseArgs.builder()
                                .captcha(WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseCaptchaArgs.builder()
                                    .build())
                                .build())
                            .build())
                    .build())
                .build());
    
        }
    }
    
    resources:
      example:
        type: aws:wafv2:WebAclRuleGroupAssociation
        properties:
          ruleName: aws-common-rule-set-with-overrides
          priority: 70
          webAclArn: ${exampleAwsWafv2WebAcl.arn}
          managedRuleGroup:
            name: AWSManagedRulesCommonRuleSet
            vendorName: AWS
            ruleActionOverrides:
              - name: GenericRFI_BODY
                actionToUse:
                  count:
                    customRequestHandling:
                      insertHeaders:
                        - name: X-RFI-Override
                          value: counted
              - name: SizeRestrictions_BODY
                actionToUse:
                  captcha: {}
    

    Managed Rule Group With Managed Rule Group Configs

    import * as pulumi from "@pulumi/pulumi";
    import * as aws from "@pulumi/aws";
    
    const example = new aws.wafv2.WebAclRuleGroupAssociation("example", {
        ruleName: "acfp-ruleset-with-rule-config",
        priority: 70,
        webAclArn: exampleAwsWafv2WebAcl.arn,
        managedRuleGroup: {
            name: "AWSManagedRulesACFPRuleSet",
            vendorName: "AWS",
            managedRuleGroupConfigs: {
                awsManagedRulesAcfpRuleSet: {
                    creationPath: "/creation",
                    registrationPagePath: "/registration",
                    requestInspection: {
                        emailField: {
                            identifier: "/email",
                        },
                        passwordField: {
                            identifier: "/password",
                        },
                        phoneNumberFields: {
                            identifiers: [
                                "/phone1",
                                "/phone2",
                            ],
                        },
                        addressFields: {
                            identifiers: [
                                "home",
                                "work",
                            ],
                        },
                        payloadType: "JSON",
                        usernameField: {
                            identifier: "/username",
                        },
                    },
                },
            },
        },
        visibilityConfig: {
            cloudwatchMetricsEnabled: true,
            metricName: "friendly-metric-name",
            sampledRequestsEnabled: true,
        },
    });
    
    import pulumi
    import pulumi_aws as aws
    
    example = aws.wafv2.WebAclRuleGroupAssociation("example",
        rule_name="acfp-ruleset-with-rule-config",
        priority=70,
        web_acl_arn=example_aws_wafv2_web_acl["arn"],
        managed_rule_group={
            "name": "AWSManagedRulesACFPRuleSet",
            "vendor_name": "AWS",
            "managed_rule_group_configs": {
                "aws_managed_rules_acfp_rule_set": {
                    "creation_path": "/creation",
                    "registration_page_path": "/registration",
                    "request_inspection": {
                        "email_field": {
                            "identifier": "/email",
                        },
                        "password_field": {
                            "identifier": "/password",
                        },
                        "phone_number_fields": {
                            "identifiers": [
                                "/phone1",
                                "/phone2",
                            ],
                        },
                        "address_fields": {
                            "identifiers": [
                                "home",
                                "work",
                            ],
                        },
                        "payload_type": "JSON",
                        "username_field": {
                            "identifier": "/username",
                        },
                    },
                },
            },
        },
        visibility_config={
            "cloudwatch_metrics_enabled": True,
            "metric_name": "friendly-metric-name",
            "sampled_requests_enabled": True,
        })
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/wafv2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := wafv2.NewWebAclRuleGroupAssociation(ctx, "example", &wafv2.WebAclRuleGroupAssociationArgs{
    			RuleName:  pulumi.String("acfp-ruleset-with-rule-config"),
    			Priority:  pulumi.Int(70),
    			WebAclArn: pulumi.Any(exampleAwsWafv2WebAcl.Arn),
    			ManagedRuleGroup: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupArgs{
    				Name:       pulumi.String("AWSManagedRulesACFPRuleSet"),
    				VendorName: pulumi.String("AWS"),
    				ManagedRuleGroupConfigs: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsArgs{
    					AwsManagedRulesAcfpRuleSet: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetArgs{
    						CreationPath:         pulumi.String("/creation"),
    						RegistrationPagePath: pulumi.String("/registration"),
    						RequestInspection: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionArgs{
    							EmailField: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionEmailFieldArgs{
    								Identifier: pulumi.String("/email"),
    							},
    							PasswordField: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionPasswordFieldArgs{
    								Identifier: pulumi.String("/password"),
    							},
    							PhoneNumberFields: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionPhoneNumberFieldsArgs{
    								Identifiers: pulumi.StringArray{
    									pulumi.String("/phone1"),
    									pulumi.String("/phone2"),
    								},
    							},
    							AddressFields: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionAddressFieldsArgs{
    								Identifiers: pulumi.StringArray{
    									pulumi.String("home"),
    									pulumi.String("work"),
    								},
    							},
    							PayloadType: pulumi.String("JSON"),
    							UsernameField: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionUsernameFieldArgs{
    								Identifier: pulumi.String("/username"),
    							},
    						},
    					},
    				},
    			},
    			VisibilityConfig: &wafv2.WebAclRuleGroupAssociationVisibilityConfigArgs{
    				CloudwatchMetricsEnabled: pulumi.Bool(true),
    				MetricName:               pulumi.String("friendly-metric-name"),
    				SampledRequestsEnabled:   pulumi.Bool(true),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Aws = Pulumi.Aws;
    
    return await Deployment.RunAsync(() => 
    {
        var example = new Aws.WafV2.WebAclRuleGroupAssociation("example", new()
        {
            RuleName = "acfp-ruleset-with-rule-config",
            Priority = 70,
            WebAclArn = exampleAwsWafv2WebAcl.Arn,
            ManagedRuleGroup = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupArgs
            {
                Name = "AWSManagedRulesACFPRuleSet",
                VendorName = "AWS",
                ManagedRuleGroupConfigs = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsArgs
                {
                    AwsManagedRulesAcfpRuleSet = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetArgs
                    {
                        CreationPath = "/creation",
                        RegistrationPagePath = "/registration",
                        RequestInspection = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionArgs
                        {
                            EmailField = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionEmailFieldArgs
                            {
                                Identifier = "/email",
                            },
                            PasswordField = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionPasswordFieldArgs
                            {
                                Identifier = "/password",
                            },
                            PhoneNumberFields = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionPhoneNumberFieldsArgs
                            {
                                Identifiers = new[]
                                {
                                    "/phone1",
                                    "/phone2",
                                },
                            },
                            AddressFields = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionAddressFieldsArgs
                            {
                                Identifiers = new[]
                                {
                                    "home",
                                    "work",
                                },
                            },
                            PayloadType = "JSON",
                            UsernameField = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionUsernameFieldArgs
                            {
                                Identifier = "/username",
                            },
                        },
                    },
                },
            },
            VisibilityConfig = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationVisibilityConfigArgs
            {
                CloudwatchMetricsEnabled = true,
                MetricName = "friendly-metric-name",
                SampledRequestsEnabled = true,
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.aws.wafv2.WebAclRuleGroupAssociation;
    import com.pulumi.aws.wafv2.WebAclRuleGroupAssociationArgs;
    import com.pulumi.aws.wafv2.inputs.WebAclRuleGroupAssociationManagedRuleGroupArgs;
    import com.pulumi.aws.wafv2.inputs.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsArgs;
    import com.pulumi.aws.wafv2.inputs.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetArgs;
    import com.pulumi.aws.wafv2.inputs.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionArgs;
    import com.pulumi.aws.wafv2.inputs.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionEmailFieldArgs;
    import com.pulumi.aws.wafv2.inputs.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionPasswordFieldArgs;
    import com.pulumi.aws.wafv2.inputs.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionPhoneNumberFieldsArgs;
    import com.pulumi.aws.wafv2.inputs.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionAddressFieldsArgs;
    import com.pulumi.aws.wafv2.inputs.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionUsernameFieldArgs;
    import com.pulumi.aws.wafv2.inputs.WebAclRuleGroupAssociationVisibilityConfigArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var example = new WebAclRuleGroupAssociation("example", WebAclRuleGroupAssociationArgs.builder()
                .ruleName("acfp-ruleset-with-rule-config")
                .priority(70)
                .webAclArn(exampleAwsWafv2WebAcl.arn())
                .managedRuleGroup(WebAclRuleGroupAssociationManagedRuleGroupArgs.builder()
                    .name("AWSManagedRulesACFPRuleSet")
                    .vendorName("AWS")
                    .managedRuleGroupConfigs(WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsArgs.builder()
                        .awsManagedRulesAcfpRuleSet(WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetArgs.builder()
                            .creationPath("/creation")
                            .registrationPagePath("/registration")
                            .requestInspection(WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionArgs.builder()
                                .emailField(WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionEmailFieldArgs.builder()
                                    .identifier("/email")
                                    .build())
                                .passwordField(WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionPasswordFieldArgs.builder()
                                    .identifier("/password")
                                    .build())
                                .phoneNumberFields(WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionPhoneNumberFieldsArgs.builder()
                                    .identifiers(                                
                                        "/phone1",
                                        "/phone2")
                                    .build())
                                .addressFields(WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionAddressFieldsArgs.builder()
                                    .identifiers(                                
                                        "home",
                                        "work")
                                    .build())
                                .payloadType("JSON")
                                .usernameField(WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionUsernameFieldArgs.builder()
                                    .identifier("/username")
                                    .build())
                                .build())
                            .build())
                        .build())
                    .build())
                .visibilityConfig(WebAclRuleGroupAssociationVisibilityConfigArgs.builder()
                    .cloudwatchMetricsEnabled(true)
                    .metricName("friendly-metric-name")
                    .sampledRequestsEnabled(true)
                    .build())
                .build());
    
        }
    }
    
    resources:
      example:
        type: aws:wafv2:WebAclRuleGroupAssociation
        properties:
          ruleName: acfp-ruleset-with-rule-config
          priority: 70
          webAclArn: ${exampleAwsWafv2WebAcl.arn}
          managedRuleGroup:
            name: AWSManagedRulesACFPRuleSet
            vendorName: AWS
            managedRuleGroupConfigs:
              awsManagedRulesAcfpRuleSet:
                creationPath: /creation
                registrationPagePath: /registration
                requestInspection:
                  emailField:
                    identifier: /email
                  passwordField:
                    identifier: /password
                  phoneNumberFields:
                    identifiers:
                      - /phone1
                      - /phone2
                  addressFields:
                    identifiers:
                      - home
                      - work
                  payloadType: JSON
                  usernameField:
                    identifier: /username
          visibilityConfig:
            cloudwatchMetricsEnabled: true
            metricName: friendly-metric-name
            sampledRequestsEnabled: true
    

    Custom Rule Group With Override Action

    import * as pulumi from "@pulumi/pulumi";
    import * as aws from "@pulumi/aws";
    
    const example = new aws.wafv2.WebAclRuleGroupAssociation("example", {
        ruleName: "example-rule-group-rule",
        priority: 100,
        webAclArn: exampleAwsWafv2WebAcl.arn,
        overrideAction: "count",
        ruleGroupReference: {
            arn: exampleAwsWafv2RuleGroup.arn,
        },
    });
    
    import pulumi
    import pulumi_aws as aws
    
    example = aws.wafv2.WebAclRuleGroupAssociation("example",
        rule_name="example-rule-group-rule",
        priority=100,
        web_acl_arn=example_aws_wafv2_web_acl["arn"],
        override_action="count",
        rule_group_reference={
            "arn": example_aws_wafv2_rule_group["arn"],
        })
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/wafv2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := wafv2.NewWebAclRuleGroupAssociation(ctx, "example", &wafv2.WebAclRuleGroupAssociationArgs{
    			RuleName:       pulumi.String("example-rule-group-rule"),
    			Priority:       pulumi.Int(100),
    			WebAclArn:      pulumi.Any(exampleAwsWafv2WebAcl.Arn),
    			OverrideAction: pulumi.String("count"),
    			RuleGroupReference: &wafv2.WebAclRuleGroupAssociationRuleGroupReferenceArgs{
    				Arn: pulumi.Any(exampleAwsWafv2RuleGroup.Arn),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Aws = Pulumi.Aws;
    
    return await Deployment.RunAsync(() => 
    {
        var example = new Aws.WafV2.WebAclRuleGroupAssociation("example", new()
        {
            RuleName = "example-rule-group-rule",
            Priority = 100,
            WebAclArn = exampleAwsWafv2WebAcl.Arn,
            OverrideAction = "count",
            RuleGroupReference = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationRuleGroupReferenceArgs
            {
                Arn = exampleAwsWafv2RuleGroup.Arn,
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.aws.wafv2.WebAclRuleGroupAssociation;
    import com.pulumi.aws.wafv2.WebAclRuleGroupAssociationArgs;
    import com.pulumi.aws.wafv2.inputs.WebAclRuleGroupAssociationRuleGroupReferenceArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var example = new WebAclRuleGroupAssociation("example", WebAclRuleGroupAssociationArgs.builder()
                .ruleName("example-rule-group-rule")
                .priority(100)
                .webAclArn(exampleAwsWafv2WebAcl.arn())
                .overrideAction("count")
                .ruleGroupReference(WebAclRuleGroupAssociationRuleGroupReferenceArgs.builder()
                    .arn(exampleAwsWafv2RuleGroup.arn())
                    .build())
                .build());
    
        }
    }
    
    resources:
      example:
        type: aws:wafv2:WebAclRuleGroupAssociation
        properties:
          ruleName: example-rule-group-rule
          priority: 100
          webAclArn: ${exampleAwsWafv2WebAcl.arn}
          overrideAction: count
          ruleGroupReference:
            arn: ${exampleAwsWafv2RuleGroup.arn}
    

    Custom Rule Group With Rule Action Overrides

    import * as pulumi from "@pulumi/pulumi";
    import * as aws from "@pulumi/aws";
    
    const example = new aws.wafv2.WebAclRuleGroupAssociation("example", {
        ruleName: "example-rule-group-rule",
        priority: 100,
        webAclArn: exampleAwsWafv2WebAcl.arn,
        ruleGroupReference: {
            arn: exampleAwsWafv2RuleGroup.arn,
            ruleActionOverrides: [
                {
                    name: "geo-block-rule",
                    actionToUse: {
                        count: {
                            customRequestHandling: {
                                insertHeaders: [{
                                    name: "X-Geo-Block-Override",
                                    value: "counted",
                                }],
                            },
                        },
                    },
                },
                {
                    name: "rate-limit-rule",
                    actionToUse: {
                        captcha: {
                            customRequestHandling: {
                                insertHeaders: [{
                                    name: "X-Rate-Limit-Override",
                                    value: "captcha-required",
                                }],
                            },
                        },
                    },
                },
            ],
        },
    });
    
    import pulumi
    import pulumi_aws as aws
    
    example = aws.wafv2.WebAclRuleGroupAssociation("example",
        rule_name="example-rule-group-rule",
        priority=100,
        web_acl_arn=example_aws_wafv2_web_acl["arn"],
        rule_group_reference={
            "arn": example_aws_wafv2_rule_group["arn"],
            "rule_action_overrides": [
                {
                    "name": "geo-block-rule",
                    "action_to_use": {
                        "count": {
                            "custom_request_handling": {
                                "insert_headers": [{
                                    "name": "X-Geo-Block-Override",
                                    "value": "counted",
                                }],
                            },
                        },
                    },
                },
                {
                    "name": "rate-limit-rule",
                    "action_to_use": {
                        "captcha": {
                            "custom_request_handling": {
                                "insert_headers": [{
                                    "name": "X-Rate-Limit-Override",
                                    "value": "captcha-required",
                                }],
                            },
                        },
                    },
                },
            ],
        })
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/wafv2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := wafv2.NewWebAclRuleGroupAssociation(ctx, "example", &wafv2.WebAclRuleGroupAssociationArgs{
    			RuleName:  pulumi.String("example-rule-group-rule"),
    			Priority:  pulumi.Int(100),
    			WebAclArn: pulumi.Any(exampleAwsWafv2WebAcl.Arn),
    			RuleGroupReference: &wafv2.WebAclRuleGroupAssociationRuleGroupReferenceArgs{
    				Arn: pulumi.Any(exampleAwsWafv2RuleGroup.Arn),
    				RuleActionOverrides: wafv2.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideArray{
    					&wafv2.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideArgs{
    						Name: pulumi.String("geo-block-rule"),
    						ActionToUse: &wafv2.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseArgs{
    							Count: &wafv2.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCountArgs{
    								CustomRequestHandling: &wafv2.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCountCustomRequestHandlingArgs{
    									InsertHeaders: wafv2.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCountCustomRequestHandlingInsertHeaderArray{
    										&wafv2.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCountCustomRequestHandlingInsertHeaderArgs{
    											Name:  pulumi.String("X-Geo-Block-Override"),
    											Value: pulumi.String("counted"),
    										},
    									},
    								},
    							},
    						},
    					},
    					&wafv2.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideArgs{
    						Name: pulumi.String("rate-limit-rule"),
    						ActionToUse: &wafv2.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseArgs{
    							Captcha: &wafv2.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCaptchaArgs{
    								CustomRequestHandling: &wafv2.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCaptchaCustomRequestHandlingArgs{
    									InsertHeaders: wafv2.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCaptchaCustomRequestHandlingInsertHeaderArray{
    										&wafv2.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCaptchaCustomRequestHandlingInsertHeaderArgs{
    											Name:  pulumi.String("X-Rate-Limit-Override"),
    											Value: pulumi.String("captcha-required"),
    										},
    									},
    								},
    							},
    						},
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Aws = Pulumi.Aws;
    
    return await Deployment.RunAsync(() => 
    {
        var example = new Aws.WafV2.WebAclRuleGroupAssociation("example", new()
        {
            RuleName = "example-rule-group-rule",
            Priority = 100,
            WebAclArn = exampleAwsWafv2WebAcl.Arn,
            RuleGroupReference = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationRuleGroupReferenceArgs
            {
                Arn = exampleAwsWafv2RuleGroup.Arn,
                RuleActionOverrides = new[]
                {
                    new Aws.WafV2.Inputs.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideArgs
                    {
                        Name = "geo-block-rule",
                        ActionToUse = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseArgs
                        {
                            Count = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCountArgs
                            {
                                CustomRequestHandling = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCountCustomRequestHandlingArgs
                                {
                                    InsertHeaders = new[]
                                    {
                                        new Aws.WafV2.Inputs.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCountCustomRequestHandlingInsertHeaderArgs
                                        {
                                            Name = "X-Geo-Block-Override",
                                            Value = "counted",
                                        },
                                    },
                                },
                            },
                        },
                    },
                    new Aws.WafV2.Inputs.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideArgs
                    {
                        Name = "rate-limit-rule",
                        ActionToUse = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseArgs
                        {
                            Captcha = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCaptchaArgs
                            {
                                CustomRequestHandling = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCaptchaCustomRequestHandlingArgs
                                {
                                    InsertHeaders = new[]
                                    {
                                        new Aws.WafV2.Inputs.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCaptchaCustomRequestHandlingInsertHeaderArgs
                                        {
                                            Name = "X-Rate-Limit-Override",
                                            Value = "captcha-required",
                                        },
                                    },
                                },
                            },
                        },
                    },
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.aws.wafv2.WebAclRuleGroupAssociation;
    import com.pulumi.aws.wafv2.WebAclRuleGroupAssociationArgs;
    import com.pulumi.aws.wafv2.inputs.WebAclRuleGroupAssociationRuleGroupReferenceArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var example = new WebAclRuleGroupAssociation("example", WebAclRuleGroupAssociationArgs.builder()
                .ruleName("example-rule-group-rule")
                .priority(100)
                .webAclArn(exampleAwsWafv2WebAcl.arn())
                .ruleGroupReference(WebAclRuleGroupAssociationRuleGroupReferenceArgs.builder()
                    .arn(exampleAwsWafv2RuleGroup.arn())
                    .ruleActionOverrides(                
                        WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideArgs.builder()
                            .name("geo-block-rule")
                            .actionToUse(WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseArgs.builder()
                                .count(WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCountArgs.builder()
                                    .customRequestHandling(WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCountCustomRequestHandlingArgs.builder()
                                        .insertHeaders(WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCountCustomRequestHandlingInsertHeaderArgs.builder()
                                            .name("X-Geo-Block-Override")
                                            .value("counted")
                                            .build())
                                        .build())
                                    .build())
                                .build())
                            .build(),
                        WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideArgs.builder()
                            .name("rate-limit-rule")
                            .actionToUse(WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseArgs.builder()
                                .captcha(WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCaptchaArgs.builder()
                                    .customRequestHandling(WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCaptchaCustomRequestHandlingArgs.builder()
                                        .insertHeaders(WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCaptchaCustomRequestHandlingInsertHeaderArgs.builder()
                                            .name("X-Rate-Limit-Override")
                                            .value("captcha-required")
                                            .build())
                                        .build())
                                    .build())
                                .build())
                            .build())
                    .build())
                .build());
    
        }
    }
    
    resources:
      example:
        type: aws:wafv2:WebAclRuleGroupAssociation
        properties:
          ruleName: example-rule-group-rule
          priority: 100
          webAclArn: ${exampleAwsWafv2WebAcl.arn}
          ruleGroupReference:
            arn: ${exampleAwsWafv2RuleGroup.arn}
            ruleActionOverrides:
              - name: geo-block-rule
                actionToUse:
                  count:
                    customRequestHandling:
                      insertHeaders:
                        - name: X-Geo-Block-Override
                          value: counted
              - name: rate-limit-rule
                actionToUse:
                  captcha:
                    customRequestHandling:
                      insertHeaders:
                        - name: X-Rate-Limit-Override
                          value: captcha-required
    

    CloudFront Web ACL

    import * as pulumi from "@pulumi/pulumi";
    import * as aws from "@pulumi/aws";
    
    const example = new aws.wafv2.WebAclRuleGroupAssociation("example", {
        ruleName: "cloudfront-rule-group-rule",
        priority: 50,
        webAclArn: exampleAwsWafv2WebAcl.arn,
        ruleGroupReference: {
            arn: exampleAwsWafv2RuleGroup.arn,
        },
    });
    
    import pulumi
    import pulumi_aws as aws
    
    example = aws.wafv2.WebAclRuleGroupAssociation("example",
        rule_name="cloudfront-rule-group-rule",
        priority=50,
        web_acl_arn=example_aws_wafv2_web_acl["arn"],
        rule_group_reference={
            "arn": example_aws_wafv2_rule_group["arn"],
        })
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/wafv2"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := wafv2.NewWebAclRuleGroupAssociation(ctx, "example", &wafv2.WebAclRuleGroupAssociationArgs{
    			RuleName:  pulumi.String("cloudfront-rule-group-rule"),
    			Priority:  pulumi.Int(50),
    			WebAclArn: pulumi.Any(exampleAwsWafv2WebAcl.Arn),
    			RuleGroupReference: &wafv2.WebAclRuleGroupAssociationRuleGroupReferenceArgs{
    				Arn: pulumi.Any(exampleAwsWafv2RuleGroup.Arn),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Aws = Pulumi.Aws;
    
    return await Deployment.RunAsync(() => 
    {
        var example = new Aws.WafV2.WebAclRuleGroupAssociation("example", new()
        {
            RuleName = "cloudfront-rule-group-rule",
            Priority = 50,
            WebAclArn = exampleAwsWafv2WebAcl.Arn,
            RuleGroupReference = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationRuleGroupReferenceArgs
            {
                Arn = exampleAwsWafv2RuleGroup.Arn,
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.aws.wafv2.WebAclRuleGroupAssociation;
    import com.pulumi.aws.wafv2.WebAclRuleGroupAssociationArgs;
    import com.pulumi.aws.wafv2.inputs.WebAclRuleGroupAssociationRuleGroupReferenceArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var example = new WebAclRuleGroupAssociation("example", WebAclRuleGroupAssociationArgs.builder()
                .ruleName("cloudfront-rule-group-rule")
                .priority(50)
                .webAclArn(exampleAwsWafv2WebAcl.arn())
                .ruleGroupReference(WebAclRuleGroupAssociationRuleGroupReferenceArgs.builder()
                    .arn(exampleAwsWafv2RuleGroup.arn())
                    .build())
                .build());
    
        }
    }
    
    resources:
      example:
        type: aws:wafv2:WebAclRuleGroupAssociation
        properties:
          ruleName: cloudfront-rule-group-rule
          priority: 50
          webAclArn: ${exampleAwsWafv2WebAcl.arn}
          ruleGroupReference:
            arn: ${exampleAwsWafv2RuleGroup.arn}
    

    Create WebAclRuleGroupAssociation Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new WebAclRuleGroupAssociation(name: string, args: WebAclRuleGroupAssociationArgs, opts?: CustomResourceOptions);
    @overload
    def WebAclRuleGroupAssociation(resource_name: str,
                                   args: WebAclRuleGroupAssociationArgs,
                                   opts: Optional[ResourceOptions] = None)
    
    @overload
    def WebAclRuleGroupAssociation(resource_name: str,
                                   opts: Optional[ResourceOptions] = None,
                                   priority: Optional[int] = None,
                                   rule_name: Optional[str] = None,
                                   web_acl_arn: Optional[str] = None,
                                   managed_rule_group: Optional[WebAclRuleGroupAssociationManagedRuleGroupArgs] = None,
                                   override_action: Optional[str] = None,
                                   region: Optional[str] = None,
                                   rule_group_reference: Optional[WebAclRuleGroupAssociationRuleGroupReferenceArgs] = None,
                                   timeouts: Optional[WebAclRuleGroupAssociationTimeoutsArgs] = None,
                                   visibility_config: Optional[WebAclRuleGroupAssociationVisibilityConfigArgs] = None)
    func NewWebAclRuleGroupAssociation(ctx *Context, name string, args WebAclRuleGroupAssociationArgs, opts ...ResourceOption) (*WebAclRuleGroupAssociation, error)
    public WebAclRuleGroupAssociation(string name, WebAclRuleGroupAssociationArgs args, CustomResourceOptions? opts = null)
    public WebAclRuleGroupAssociation(String name, WebAclRuleGroupAssociationArgs args)
    public WebAclRuleGroupAssociation(String name, WebAclRuleGroupAssociationArgs args, CustomResourceOptions options)
    
    type: aws:wafv2:WebAclRuleGroupAssociation
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args WebAclRuleGroupAssociationArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args WebAclRuleGroupAssociationArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args WebAclRuleGroupAssociationArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args WebAclRuleGroupAssociationArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args WebAclRuleGroupAssociationArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var webAclRuleGroupAssociationResource = new Aws.WafV2.WebAclRuleGroupAssociation("webAclRuleGroupAssociationResource", new()
    {
        Priority = 0,
        RuleName = "string",
        WebAclArn = "string",
        ManagedRuleGroup = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupArgs
        {
            Name = "string",
            VendorName = "string",
            ManagedRuleGroupConfigs = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsArgs
            {
                AwsManagedRulesAcfpRuleSet = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetArgs
                {
                    CreationPath = "string",
                    RegistrationPagePath = "string",
                    EnableRegexInPath = false,
                    RequestInspection = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionArgs
                    {
                        PayloadType = "string",
                        AddressFields = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionAddressFieldsArgs
                        {
                            Identifiers = new[]
                            {
                                "string",
                            },
                        },
                        EmailField = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionEmailFieldArgs
                        {
                            Identifier = "string",
                        },
                        PasswordField = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionPasswordFieldArgs
                        {
                            Identifier = "string",
                        },
                        PhoneNumberFields = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionPhoneNumberFieldsArgs
                        {
                            Identifiers = new[]
                            {
                                "string",
                            },
                        },
                        UsernameField = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionUsernameFieldArgs
                        {
                            Identifier = "string",
                        },
                    },
                    ResponseInspection = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetResponseInspectionArgs
                    {
                        BodyContains = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetResponseInspectionBodyContainsArgs
                        {
                            FailureStrings = new[]
                            {
                                "string",
                            },
                            SuccessStrings = new[]
                            {
                                "string",
                            },
                        },
                        Header = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetResponseInspectionHeaderArgs
                        {
                            FailureValues = new[]
                            {
                                "string",
                            },
                            Name = "string",
                            SuccessValues = new[]
                            {
                                "string",
                            },
                        },
                        Json = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetResponseInspectionJsonArgs
                        {
                            FailureValues = new[]
                            {
                                "string",
                            },
                            Identifier = "string",
                            SuccessValues = new[]
                            {
                                "string",
                            },
                        },
                        StatusCode = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetResponseInspectionStatusCodeArgs
                        {
                            FailureCodes = new[]
                            {
                                0,
                            },
                            SuccessCodes = new[]
                            {
                                0,
                            },
                        },
                    },
                },
                AwsManagedRulesAntiDdosRuleSet = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAntiDdosRuleSetArgs
                {
                    ClientSideActionConfig = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAntiDdosRuleSetClientSideActionConfigArgs
                    {
                        Challenge = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAntiDdosRuleSetClientSideActionConfigChallengeArgs
                        {
                            UsageOfAction = "string",
                            ExemptUriRegularExpressions = new[]
                            {
                                new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAntiDdosRuleSetClientSideActionConfigChallengeExemptUriRegularExpressionArgs
                                {
                                    RegexString = "string",
                                },
                            },
                            Sensitivity = "string",
                        },
                    },
                    SensitivityToBlock = "string",
                },
                AwsManagedRulesAtpRuleSet = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetArgs
                {
                    LoginPath = "string",
                    EnableRegexInPath = false,
                    RequestInspection = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetRequestInspectionArgs
                    {
                        PayloadType = "string",
                        PasswordField = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetRequestInspectionPasswordFieldArgs
                        {
                            Identifier = "string",
                        },
                        UsernameField = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetRequestInspectionUsernameFieldArgs
                        {
                            Identifier = "string",
                        },
                    },
                    ResponseInspection = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetResponseInspectionArgs
                    {
                        BodyContains = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetResponseInspectionBodyContainsArgs
                        {
                            FailureStrings = new[]
                            {
                                "string",
                            },
                            SuccessStrings = new[]
                            {
                                "string",
                            },
                        },
                        Header = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetResponseInspectionHeaderArgs
                        {
                            FailureValues = new[]
                            {
                                "string",
                            },
                            Name = "string",
                            SuccessValues = new[]
                            {
                                "string",
                            },
                        },
                        Json = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetResponseInspectionJsonArgs
                        {
                            FailureValues = new[]
                            {
                                "string",
                            },
                            Identifier = "string",
                            SuccessValues = new[]
                            {
                                "string",
                            },
                        },
                        StatusCode = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetResponseInspectionStatusCodeArgs
                        {
                            FailureCodes = new[]
                            {
                                0,
                            },
                            SuccessCodes = new[]
                            {
                                0,
                            },
                        },
                    },
                },
                AwsManagedRulesBotControlRuleSet = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesBotControlRuleSetArgs
                {
                    InspectionLevel = "string",
                    EnableMachineLearning = false,
                },
            },
            RuleActionOverrides = new[]
            {
                new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideArgs
                {
                    Name = "string",
                    ActionToUse = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseArgs
                    {
                        Allow = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseAllowArgs
                        {
                            CustomRequestHandling = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseAllowCustomRequestHandlingArgs
                            {
                                InsertHeaders = new[]
                                {
                                    new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseAllowCustomRequestHandlingInsertHeaderArgs
                                    {
                                        Name = "string",
                                        Value = "string",
                                    },
                                },
                            },
                        },
                        Block = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseBlockArgs
                        {
                            CustomResponse = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseBlockCustomResponseArgs
                            {
                                ResponseCode = 0,
                                CustomResponseBodyKey = "string",
                                ResponseHeaders = new[]
                                {
                                    new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseBlockCustomResponseResponseHeaderArgs
                                    {
                                        Name = "string",
                                        Value = "string",
                                    },
                                },
                            },
                        },
                        Captcha = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseCaptchaArgs
                        {
                            CustomRequestHandling = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseCaptchaCustomRequestHandlingArgs
                            {
                                InsertHeaders = new[]
                                {
                                    new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseCaptchaCustomRequestHandlingInsertHeaderArgs
                                    {
                                        Name = "string",
                                        Value = "string",
                                    },
                                },
                            },
                        },
                        Challenge = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseChallengeArgs
                        {
                            CustomRequestHandling = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseChallengeCustomRequestHandlingArgs
                            {
                                InsertHeaders = new[]
                                {
                                    new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseChallengeCustomRequestHandlingInsertHeaderArgs
                                    {
                                        Name = "string",
                                        Value = "string",
                                    },
                                },
                            },
                        },
                        Count = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseCountArgs
                        {
                            CustomRequestHandling = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseCountCustomRequestHandlingArgs
                            {
                                InsertHeaders = new[]
                                {
                                    new Aws.WafV2.Inputs.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseCountCustomRequestHandlingInsertHeaderArgs
                                    {
                                        Name = "string",
                                        Value = "string",
                                    },
                                },
                            },
                        },
                    },
                },
            },
            Version = "string",
        },
        OverrideAction = "string",
        Region = "string",
        RuleGroupReference = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationRuleGroupReferenceArgs
        {
            Arn = "string",
            RuleActionOverrides = new[]
            {
                new Aws.WafV2.Inputs.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideArgs
                {
                    Name = "string",
                    ActionToUse = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseArgs
                    {
                        Allow = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseAllowArgs
                        {
                            CustomRequestHandling = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseAllowCustomRequestHandlingArgs
                            {
                                InsertHeaders = new[]
                                {
                                    new Aws.WafV2.Inputs.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseAllowCustomRequestHandlingInsertHeaderArgs
                                    {
                                        Name = "string",
                                        Value = "string",
                                    },
                                },
                            },
                        },
                        Block = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseBlockArgs
                        {
                            CustomResponse = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseBlockCustomResponseArgs
                            {
                                ResponseCode = 0,
                                CustomResponseBodyKey = "string",
                                ResponseHeaders = new[]
                                {
                                    new Aws.WafV2.Inputs.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseBlockCustomResponseResponseHeaderArgs
                                    {
                                        Name = "string",
                                        Value = "string",
                                    },
                                },
                            },
                        },
                        Captcha = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCaptchaArgs
                        {
                            CustomRequestHandling = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCaptchaCustomRequestHandlingArgs
                            {
                                InsertHeaders = new[]
                                {
                                    new Aws.WafV2.Inputs.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCaptchaCustomRequestHandlingInsertHeaderArgs
                                    {
                                        Name = "string",
                                        Value = "string",
                                    },
                                },
                            },
                        },
                        Challenge = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseChallengeArgs
                        {
                            CustomRequestHandling = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseChallengeCustomRequestHandlingArgs
                            {
                                InsertHeaders = new[]
                                {
                                    new Aws.WafV2.Inputs.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseChallengeCustomRequestHandlingInsertHeaderArgs
                                    {
                                        Name = "string",
                                        Value = "string",
                                    },
                                },
                            },
                        },
                        Count = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCountArgs
                        {
                            CustomRequestHandling = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCountCustomRequestHandlingArgs
                            {
                                InsertHeaders = new[]
                                {
                                    new Aws.WafV2.Inputs.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCountCustomRequestHandlingInsertHeaderArgs
                                    {
                                        Name = "string",
                                        Value = "string",
                                    },
                                },
                            },
                        },
                    },
                },
            },
        },
        Timeouts = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationTimeoutsArgs
        {
            Create = "string",
            Delete = "string",
            Update = "string",
        },
        VisibilityConfig = new Aws.WafV2.Inputs.WebAclRuleGroupAssociationVisibilityConfigArgs
        {
            CloudwatchMetricsEnabled = false,
            MetricName = "string",
            SampledRequestsEnabled = false,
        },
    });
    
    example, err := wafv2.NewWebAclRuleGroupAssociation(ctx, "webAclRuleGroupAssociationResource", &wafv2.WebAclRuleGroupAssociationArgs{
    	Priority:  pulumi.Int(0),
    	RuleName:  pulumi.String("string"),
    	WebAclArn: pulumi.String("string"),
    	ManagedRuleGroup: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupArgs{
    		Name:       pulumi.String("string"),
    		VendorName: pulumi.String("string"),
    		ManagedRuleGroupConfigs: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsArgs{
    			AwsManagedRulesAcfpRuleSet: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetArgs{
    				CreationPath:         pulumi.String("string"),
    				RegistrationPagePath: pulumi.String("string"),
    				EnableRegexInPath:    pulumi.Bool(false),
    				RequestInspection: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionArgs{
    					PayloadType: pulumi.String("string"),
    					AddressFields: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionAddressFieldsArgs{
    						Identifiers: pulumi.StringArray{
    							pulumi.String("string"),
    						},
    					},
    					EmailField: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionEmailFieldArgs{
    						Identifier: pulumi.String("string"),
    					},
    					PasswordField: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionPasswordFieldArgs{
    						Identifier: pulumi.String("string"),
    					},
    					PhoneNumberFields: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionPhoneNumberFieldsArgs{
    						Identifiers: pulumi.StringArray{
    							pulumi.String("string"),
    						},
    					},
    					UsernameField: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionUsernameFieldArgs{
    						Identifier: pulumi.String("string"),
    					},
    				},
    				ResponseInspection: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetResponseInspectionArgs{
    					BodyContains: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetResponseInspectionBodyContainsArgs{
    						FailureStrings: pulumi.StringArray{
    							pulumi.String("string"),
    						},
    						SuccessStrings: pulumi.StringArray{
    							pulumi.String("string"),
    						},
    					},
    					Header: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetResponseInspectionHeaderArgs{
    						FailureValues: pulumi.StringArray{
    							pulumi.String("string"),
    						},
    						Name: pulumi.String("string"),
    						SuccessValues: pulumi.StringArray{
    							pulumi.String("string"),
    						},
    					},
    					Json: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetResponseInspectionJsonArgs{
    						FailureValues: pulumi.StringArray{
    							pulumi.String("string"),
    						},
    						Identifier: pulumi.String("string"),
    						SuccessValues: pulumi.StringArray{
    							pulumi.String("string"),
    						},
    					},
    					StatusCode: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetResponseInspectionStatusCodeArgs{
    						FailureCodes: pulumi.IntArray{
    							pulumi.Int(0),
    						},
    						SuccessCodes: pulumi.IntArray{
    							pulumi.Int(0),
    						},
    					},
    				},
    			},
    			AwsManagedRulesAntiDdosRuleSet: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAntiDdosRuleSetArgs{
    				ClientSideActionConfig: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAntiDdosRuleSetClientSideActionConfigArgs{
    					Challenge: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAntiDdosRuleSetClientSideActionConfigChallengeArgs{
    						UsageOfAction: pulumi.String("string"),
    						ExemptUriRegularExpressions: wafv2.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAntiDdosRuleSetClientSideActionConfigChallengeExemptUriRegularExpressionArray{
    							&wafv2.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAntiDdosRuleSetClientSideActionConfigChallengeExemptUriRegularExpressionArgs{
    								RegexString: pulumi.String("string"),
    							},
    						},
    						Sensitivity: pulumi.String("string"),
    					},
    				},
    				SensitivityToBlock: pulumi.String("string"),
    			},
    			AwsManagedRulesAtpRuleSet: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetArgs{
    				LoginPath:         pulumi.String("string"),
    				EnableRegexInPath: pulumi.Bool(false),
    				RequestInspection: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetRequestInspectionArgs{
    					PayloadType: pulumi.String("string"),
    					PasswordField: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetRequestInspectionPasswordFieldArgs{
    						Identifier: pulumi.String("string"),
    					},
    					UsernameField: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetRequestInspectionUsernameFieldArgs{
    						Identifier: pulumi.String("string"),
    					},
    				},
    				ResponseInspection: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetResponseInspectionArgs{
    					BodyContains: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetResponseInspectionBodyContainsArgs{
    						FailureStrings: pulumi.StringArray{
    							pulumi.String("string"),
    						},
    						SuccessStrings: pulumi.StringArray{
    							pulumi.String("string"),
    						},
    					},
    					Header: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetResponseInspectionHeaderArgs{
    						FailureValues: pulumi.StringArray{
    							pulumi.String("string"),
    						},
    						Name: pulumi.String("string"),
    						SuccessValues: pulumi.StringArray{
    							pulumi.String("string"),
    						},
    					},
    					Json: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetResponseInspectionJsonArgs{
    						FailureValues: pulumi.StringArray{
    							pulumi.String("string"),
    						},
    						Identifier: pulumi.String("string"),
    						SuccessValues: pulumi.StringArray{
    							pulumi.String("string"),
    						},
    					},
    					StatusCode: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetResponseInspectionStatusCodeArgs{
    						FailureCodes: pulumi.IntArray{
    							pulumi.Int(0),
    						},
    						SuccessCodes: pulumi.IntArray{
    							pulumi.Int(0),
    						},
    					},
    				},
    			},
    			AwsManagedRulesBotControlRuleSet: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesBotControlRuleSetArgs{
    				InspectionLevel:       pulumi.String("string"),
    				EnableMachineLearning: pulumi.Bool(false),
    			},
    		},
    		RuleActionOverrides: wafv2.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideArray{
    			&wafv2.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideArgs{
    				Name: pulumi.String("string"),
    				ActionToUse: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseArgs{
    					Allow: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseAllowArgs{
    						CustomRequestHandling: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseAllowCustomRequestHandlingArgs{
    							InsertHeaders: wafv2.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseAllowCustomRequestHandlingInsertHeaderArray{
    								&wafv2.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseAllowCustomRequestHandlingInsertHeaderArgs{
    									Name:  pulumi.String("string"),
    									Value: pulumi.String("string"),
    								},
    							},
    						},
    					},
    					Block: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseBlockArgs{
    						CustomResponse: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseBlockCustomResponseArgs{
    							ResponseCode:          pulumi.Int(0),
    							CustomResponseBodyKey: pulumi.String("string"),
    							ResponseHeaders: wafv2.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseBlockCustomResponseResponseHeaderArray{
    								&wafv2.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseBlockCustomResponseResponseHeaderArgs{
    									Name:  pulumi.String("string"),
    									Value: pulumi.String("string"),
    								},
    							},
    						},
    					},
    					Captcha: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseCaptchaArgs{
    						CustomRequestHandling: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseCaptchaCustomRequestHandlingArgs{
    							InsertHeaders: wafv2.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseCaptchaCustomRequestHandlingInsertHeaderArray{
    								&wafv2.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseCaptchaCustomRequestHandlingInsertHeaderArgs{
    									Name:  pulumi.String("string"),
    									Value: pulumi.String("string"),
    								},
    							},
    						},
    					},
    					Challenge: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseChallengeArgs{
    						CustomRequestHandling: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseChallengeCustomRequestHandlingArgs{
    							InsertHeaders: wafv2.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseChallengeCustomRequestHandlingInsertHeaderArray{
    								&wafv2.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseChallengeCustomRequestHandlingInsertHeaderArgs{
    									Name:  pulumi.String("string"),
    									Value: pulumi.String("string"),
    								},
    							},
    						},
    					},
    					Count: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseCountArgs{
    						CustomRequestHandling: &wafv2.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseCountCustomRequestHandlingArgs{
    							InsertHeaders: wafv2.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseCountCustomRequestHandlingInsertHeaderArray{
    								&wafv2.WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseCountCustomRequestHandlingInsertHeaderArgs{
    									Name:  pulumi.String("string"),
    									Value: pulumi.String("string"),
    								},
    							},
    						},
    					},
    				},
    			},
    		},
    		Version: pulumi.String("string"),
    	},
    	OverrideAction: pulumi.String("string"),
    	Region:         pulumi.String("string"),
    	RuleGroupReference: &wafv2.WebAclRuleGroupAssociationRuleGroupReferenceArgs{
    		Arn: pulumi.String("string"),
    		RuleActionOverrides: wafv2.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideArray{
    			&wafv2.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideArgs{
    				Name: pulumi.String("string"),
    				ActionToUse: &wafv2.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseArgs{
    					Allow: &wafv2.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseAllowArgs{
    						CustomRequestHandling: &wafv2.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseAllowCustomRequestHandlingArgs{
    							InsertHeaders: wafv2.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseAllowCustomRequestHandlingInsertHeaderArray{
    								&wafv2.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseAllowCustomRequestHandlingInsertHeaderArgs{
    									Name:  pulumi.String("string"),
    									Value: pulumi.String("string"),
    								},
    							},
    						},
    					},
    					Block: &wafv2.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseBlockArgs{
    						CustomResponse: &wafv2.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseBlockCustomResponseArgs{
    							ResponseCode:          pulumi.Int(0),
    							CustomResponseBodyKey: pulumi.String("string"),
    							ResponseHeaders: wafv2.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseBlockCustomResponseResponseHeaderArray{
    								&wafv2.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseBlockCustomResponseResponseHeaderArgs{
    									Name:  pulumi.String("string"),
    									Value: pulumi.String("string"),
    								},
    							},
    						},
    					},
    					Captcha: &wafv2.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCaptchaArgs{
    						CustomRequestHandling: &wafv2.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCaptchaCustomRequestHandlingArgs{
    							InsertHeaders: wafv2.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCaptchaCustomRequestHandlingInsertHeaderArray{
    								&wafv2.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCaptchaCustomRequestHandlingInsertHeaderArgs{
    									Name:  pulumi.String("string"),
    									Value: pulumi.String("string"),
    								},
    							},
    						},
    					},
    					Challenge: &wafv2.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseChallengeArgs{
    						CustomRequestHandling: &wafv2.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseChallengeCustomRequestHandlingArgs{
    							InsertHeaders: wafv2.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseChallengeCustomRequestHandlingInsertHeaderArray{
    								&wafv2.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseChallengeCustomRequestHandlingInsertHeaderArgs{
    									Name:  pulumi.String("string"),
    									Value: pulumi.String("string"),
    								},
    							},
    						},
    					},
    					Count: &wafv2.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCountArgs{
    						CustomRequestHandling: &wafv2.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCountCustomRequestHandlingArgs{
    							InsertHeaders: wafv2.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCountCustomRequestHandlingInsertHeaderArray{
    								&wafv2.WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCountCustomRequestHandlingInsertHeaderArgs{
    									Name:  pulumi.String("string"),
    									Value: pulumi.String("string"),
    								},
    							},
    						},
    					},
    				},
    			},
    		},
    	},
    	Timeouts: &wafv2.WebAclRuleGroupAssociationTimeoutsArgs{
    		Create: pulumi.String("string"),
    		Delete: pulumi.String("string"),
    		Update: pulumi.String("string"),
    	},
    	VisibilityConfig: &wafv2.WebAclRuleGroupAssociationVisibilityConfigArgs{
    		CloudwatchMetricsEnabled: pulumi.Bool(false),
    		MetricName:               pulumi.String("string"),
    		SampledRequestsEnabled:   pulumi.Bool(false),
    	},
    })
    
    var webAclRuleGroupAssociationResource = new WebAclRuleGroupAssociation("webAclRuleGroupAssociationResource", WebAclRuleGroupAssociationArgs.builder()
        .priority(0)
        .ruleName("string")
        .webAclArn("string")
        .managedRuleGroup(WebAclRuleGroupAssociationManagedRuleGroupArgs.builder()
            .name("string")
            .vendorName("string")
            .managedRuleGroupConfigs(WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsArgs.builder()
                .awsManagedRulesAcfpRuleSet(WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetArgs.builder()
                    .creationPath("string")
                    .registrationPagePath("string")
                    .enableRegexInPath(false)
                    .requestInspection(WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionArgs.builder()
                        .payloadType("string")
                        .addressFields(WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionAddressFieldsArgs.builder()
                            .identifiers("string")
                            .build())
                        .emailField(WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionEmailFieldArgs.builder()
                            .identifier("string")
                            .build())
                        .passwordField(WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionPasswordFieldArgs.builder()
                            .identifier("string")
                            .build())
                        .phoneNumberFields(WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionPhoneNumberFieldsArgs.builder()
                            .identifiers("string")
                            .build())
                        .usernameField(WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionUsernameFieldArgs.builder()
                            .identifier("string")
                            .build())
                        .build())
                    .responseInspection(WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetResponseInspectionArgs.builder()
                        .bodyContains(WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetResponseInspectionBodyContainsArgs.builder()
                            .failureStrings("string")
                            .successStrings("string")
                            .build())
                        .header(WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetResponseInspectionHeaderArgs.builder()
                            .failureValues("string")
                            .name("string")
                            .successValues("string")
                            .build())
                        .json(WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetResponseInspectionJsonArgs.builder()
                            .failureValues("string")
                            .identifier("string")
                            .successValues("string")
                            .build())
                        .statusCode(WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetResponseInspectionStatusCodeArgs.builder()
                            .failureCodes(0)
                            .successCodes(0)
                            .build())
                        .build())
                    .build())
                .awsManagedRulesAntiDdosRuleSet(WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAntiDdosRuleSetArgs.builder()
                    .clientSideActionConfig(WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAntiDdosRuleSetClientSideActionConfigArgs.builder()
                        .challenge(WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAntiDdosRuleSetClientSideActionConfigChallengeArgs.builder()
                            .usageOfAction("string")
                            .exemptUriRegularExpressions(WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAntiDdosRuleSetClientSideActionConfigChallengeExemptUriRegularExpressionArgs.builder()
                                .regexString("string")
                                .build())
                            .sensitivity("string")
                            .build())
                        .build())
                    .sensitivityToBlock("string")
                    .build())
                .awsManagedRulesAtpRuleSet(WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetArgs.builder()
                    .loginPath("string")
                    .enableRegexInPath(false)
                    .requestInspection(WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetRequestInspectionArgs.builder()
                        .payloadType("string")
                        .passwordField(WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetRequestInspectionPasswordFieldArgs.builder()
                            .identifier("string")
                            .build())
                        .usernameField(WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetRequestInspectionUsernameFieldArgs.builder()
                            .identifier("string")
                            .build())
                        .build())
                    .responseInspection(WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetResponseInspectionArgs.builder()
                        .bodyContains(WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetResponseInspectionBodyContainsArgs.builder()
                            .failureStrings("string")
                            .successStrings("string")
                            .build())
                        .header(WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetResponseInspectionHeaderArgs.builder()
                            .failureValues("string")
                            .name("string")
                            .successValues("string")
                            .build())
                        .json(WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetResponseInspectionJsonArgs.builder()
                            .failureValues("string")
                            .identifier("string")
                            .successValues("string")
                            .build())
                        .statusCode(WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetResponseInspectionStatusCodeArgs.builder()
                            .failureCodes(0)
                            .successCodes(0)
                            .build())
                        .build())
                    .build())
                .awsManagedRulesBotControlRuleSet(WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesBotControlRuleSetArgs.builder()
                    .inspectionLevel("string")
                    .enableMachineLearning(false)
                    .build())
                .build())
            .ruleActionOverrides(WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideArgs.builder()
                .name("string")
                .actionToUse(WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseArgs.builder()
                    .allow(WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseAllowArgs.builder()
                        .customRequestHandling(WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseAllowCustomRequestHandlingArgs.builder()
                            .insertHeaders(WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseAllowCustomRequestHandlingInsertHeaderArgs.builder()
                                .name("string")
                                .value("string")
                                .build())
                            .build())
                        .build())
                    .block(WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseBlockArgs.builder()
                        .customResponse(WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseBlockCustomResponseArgs.builder()
                            .responseCode(0)
                            .customResponseBodyKey("string")
                            .responseHeaders(WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseBlockCustomResponseResponseHeaderArgs.builder()
                                .name("string")
                                .value("string")
                                .build())
                            .build())
                        .build())
                    .captcha(WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseCaptchaArgs.builder()
                        .customRequestHandling(WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseCaptchaCustomRequestHandlingArgs.builder()
                            .insertHeaders(WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseCaptchaCustomRequestHandlingInsertHeaderArgs.builder()
                                .name("string")
                                .value("string")
                                .build())
                            .build())
                        .build())
                    .challenge(WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseChallengeArgs.builder()
                        .customRequestHandling(WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseChallengeCustomRequestHandlingArgs.builder()
                            .insertHeaders(WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseChallengeCustomRequestHandlingInsertHeaderArgs.builder()
                                .name("string")
                                .value("string")
                                .build())
                            .build())
                        .build())
                    .count(WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseCountArgs.builder()
                        .customRequestHandling(WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseCountCustomRequestHandlingArgs.builder()
                            .insertHeaders(WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseCountCustomRequestHandlingInsertHeaderArgs.builder()
                                .name("string")
                                .value("string")
                                .build())
                            .build())
                        .build())
                    .build())
                .build())
            .version("string")
            .build())
        .overrideAction("string")
        .region("string")
        .ruleGroupReference(WebAclRuleGroupAssociationRuleGroupReferenceArgs.builder()
            .arn("string")
            .ruleActionOverrides(WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideArgs.builder()
                .name("string")
                .actionToUse(WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseArgs.builder()
                    .allow(WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseAllowArgs.builder()
                        .customRequestHandling(WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseAllowCustomRequestHandlingArgs.builder()
                            .insertHeaders(WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseAllowCustomRequestHandlingInsertHeaderArgs.builder()
                                .name("string")
                                .value("string")
                                .build())
                            .build())
                        .build())
                    .block(WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseBlockArgs.builder()
                        .customResponse(WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseBlockCustomResponseArgs.builder()
                            .responseCode(0)
                            .customResponseBodyKey("string")
                            .responseHeaders(WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseBlockCustomResponseResponseHeaderArgs.builder()
                                .name("string")
                                .value("string")
                                .build())
                            .build())
                        .build())
                    .captcha(WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCaptchaArgs.builder()
                        .customRequestHandling(WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCaptchaCustomRequestHandlingArgs.builder()
                            .insertHeaders(WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCaptchaCustomRequestHandlingInsertHeaderArgs.builder()
                                .name("string")
                                .value("string")
                                .build())
                            .build())
                        .build())
                    .challenge(WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseChallengeArgs.builder()
                        .customRequestHandling(WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseChallengeCustomRequestHandlingArgs.builder()
                            .insertHeaders(WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseChallengeCustomRequestHandlingInsertHeaderArgs.builder()
                                .name("string")
                                .value("string")
                                .build())
                            .build())
                        .build())
                    .count(WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCountArgs.builder()
                        .customRequestHandling(WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCountCustomRequestHandlingArgs.builder()
                            .insertHeaders(WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCountCustomRequestHandlingInsertHeaderArgs.builder()
                                .name("string")
                                .value("string")
                                .build())
                            .build())
                        .build())
                    .build())
                .build())
            .build())
        .timeouts(WebAclRuleGroupAssociationTimeoutsArgs.builder()
            .create("string")
            .delete("string")
            .update("string")
            .build())
        .visibilityConfig(WebAclRuleGroupAssociationVisibilityConfigArgs.builder()
            .cloudwatchMetricsEnabled(false)
            .metricName("string")
            .sampledRequestsEnabled(false)
            .build())
        .build());
    
    web_acl_rule_group_association_resource = aws.wafv2.WebAclRuleGroupAssociation("webAclRuleGroupAssociationResource",
        priority=0,
        rule_name="string",
        web_acl_arn="string",
        managed_rule_group={
            "name": "string",
            "vendor_name": "string",
            "managed_rule_group_configs": {
                "aws_managed_rules_acfp_rule_set": {
                    "creation_path": "string",
                    "registration_page_path": "string",
                    "enable_regex_in_path": False,
                    "request_inspection": {
                        "payload_type": "string",
                        "address_fields": {
                            "identifiers": ["string"],
                        },
                        "email_field": {
                            "identifier": "string",
                        },
                        "password_field": {
                            "identifier": "string",
                        },
                        "phone_number_fields": {
                            "identifiers": ["string"],
                        },
                        "username_field": {
                            "identifier": "string",
                        },
                    },
                    "response_inspection": {
                        "body_contains": {
                            "failure_strings": ["string"],
                            "success_strings": ["string"],
                        },
                        "header": {
                            "failure_values": ["string"],
                            "name": "string",
                            "success_values": ["string"],
                        },
                        "json": {
                            "failure_values": ["string"],
                            "identifier": "string",
                            "success_values": ["string"],
                        },
                        "status_code": {
                            "failure_codes": [0],
                            "success_codes": [0],
                        },
                    },
                },
                "aws_managed_rules_anti_ddos_rule_set": {
                    "client_side_action_config": {
                        "challenge": {
                            "usage_of_action": "string",
                            "exempt_uri_regular_expressions": [{
                                "regex_string": "string",
                            }],
                            "sensitivity": "string",
                        },
                    },
                    "sensitivity_to_block": "string",
                },
                "aws_managed_rules_atp_rule_set": {
                    "login_path": "string",
                    "enable_regex_in_path": False,
                    "request_inspection": {
                        "payload_type": "string",
                        "password_field": {
                            "identifier": "string",
                        },
                        "username_field": {
                            "identifier": "string",
                        },
                    },
                    "response_inspection": {
                        "body_contains": {
                            "failure_strings": ["string"],
                            "success_strings": ["string"],
                        },
                        "header": {
                            "failure_values": ["string"],
                            "name": "string",
                            "success_values": ["string"],
                        },
                        "json": {
                            "failure_values": ["string"],
                            "identifier": "string",
                            "success_values": ["string"],
                        },
                        "status_code": {
                            "failure_codes": [0],
                            "success_codes": [0],
                        },
                    },
                },
                "aws_managed_rules_bot_control_rule_set": {
                    "inspection_level": "string",
                    "enable_machine_learning": False,
                },
            },
            "rule_action_overrides": [{
                "name": "string",
                "action_to_use": {
                    "allow": {
                        "custom_request_handling": {
                            "insert_headers": [{
                                "name": "string",
                                "value": "string",
                            }],
                        },
                    },
                    "block": {
                        "custom_response": {
                            "response_code": 0,
                            "custom_response_body_key": "string",
                            "response_headers": [{
                                "name": "string",
                                "value": "string",
                            }],
                        },
                    },
                    "captcha": {
                        "custom_request_handling": {
                            "insert_headers": [{
                                "name": "string",
                                "value": "string",
                            }],
                        },
                    },
                    "challenge": {
                        "custom_request_handling": {
                            "insert_headers": [{
                                "name": "string",
                                "value": "string",
                            }],
                        },
                    },
                    "count": {
                        "custom_request_handling": {
                            "insert_headers": [{
                                "name": "string",
                                "value": "string",
                            }],
                        },
                    },
                },
            }],
            "version": "string",
        },
        override_action="string",
        region="string",
        rule_group_reference={
            "arn": "string",
            "rule_action_overrides": [{
                "name": "string",
                "action_to_use": {
                    "allow": {
                        "custom_request_handling": {
                            "insert_headers": [{
                                "name": "string",
                                "value": "string",
                            }],
                        },
                    },
                    "block": {
                        "custom_response": {
                            "response_code": 0,
                            "custom_response_body_key": "string",
                            "response_headers": [{
                                "name": "string",
                                "value": "string",
                            }],
                        },
                    },
                    "captcha": {
                        "custom_request_handling": {
                            "insert_headers": [{
                                "name": "string",
                                "value": "string",
                            }],
                        },
                    },
                    "challenge": {
                        "custom_request_handling": {
                            "insert_headers": [{
                                "name": "string",
                                "value": "string",
                            }],
                        },
                    },
                    "count": {
                        "custom_request_handling": {
                            "insert_headers": [{
                                "name": "string",
                                "value": "string",
                            }],
                        },
                    },
                },
            }],
        },
        timeouts={
            "create": "string",
            "delete": "string",
            "update": "string",
        },
        visibility_config={
            "cloudwatch_metrics_enabled": False,
            "metric_name": "string",
            "sampled_requests_enabled": False,
        })
    
    const webAclRuleGroupAssociationResource = new aws.wafv2.WebAclRuleGroupAssociation("webAclRuleGroupAssociationResource", {
        priority: 0,
        ruleName: "string",
        webAclArn: "string",
        managedRuleGroup: {
            name: "string",
            vendorName: "string",
            managedRuleGroupConfigs: {
                awsManagedRulesAcfpRuleSet: {
                    creationPath: "string",
                    registrationPagePath: "string",
                    enableRegexInPath: false,
                    requestInspection: {
                        payloadType: "string",
                        addressFields: {
                            identifiers: ["string"],
                        },
                        emailField: {
                            identifier: "string",
                        },
                        passwordField: {
                            identifier: "string",
                        },
                        phoneNumberFields: {
                            identifiers: ["string"],
                        },
                        usernameField: {
                            identifier: "string",
                        },
                    },
                    responseInspection: {
                        bodyContains: {
                            failureStrings: ["string"],
                            successStrings: ["string"],
                        },
                        header: {
                            failureValues: ["string"],
                            name: "string",
                            successValues: ["string"],
                        },
                        json: {
                            failureValues: ["string"],
                            identifier: "string",
                            successValues: ["string"],
                        },
                        statusCode: {
                            failureCodes: [0],
                            successCodes: [0],
                        },
                    },
                },
                awsManagedRulesAntiDdosRuleSet: {
                    clientSideActionConfig: {
                        challenge: {
                            usageOfAction: "string",
                            exemptUriRegularExpressions: [{
                                regexString: "string",
                            }],
                            sensitivity: "string",
                        },
                    },
                    sensitivityToBlock: "string",
                },
                awsManagedRulesAtpRuleSet: {
                    loginPath: "string",
                    enableRegexInPath: false,
                    requestInspection: {
                        payloadType: "string",
                        passwordField: {
                            identifier: "string",
                        },
                        usernameField: {
                            identifier: "string",
                        },
                    },
                    responseInspection: {
                        bodyContains: {
                            failureStrings: ["string"],
                            successStrings: ["string"],
                        },
                        header: {
                            failureValues: ["string"],
                            name: "string",
                            successValues: ["string"],
                        },
                        json: {
                            failureValues: ["string"],
                            identifier: "string",
                            successValues: ["string"],
                        },
                        statusCode: {
                            failureCodes: [0],
                            successCodes: [0],
                        },
                    },
                },
                awsManagedRulesBotControlRuleSet: {
                    inspectionLevel: "string",
                    enableMachineLearning: false,
                },
            },
            ruleActionOverrides: [{
                name: "string",
                actionToUse: {
                    allow: {
                        customRequestHandling: {
                            insertHeaders: [{
                                name: "string",
                                value: "string",
                            }],
                        },
                    },
                    block: {
                        customResponse: {
                            responseCode: 0,
                            customResponseBodyKey: "string",
                            responseHeaders: [{
                                name: "string",
                                value: "string",
                            }],
                        },
                    },
                    captcha: {
                        customRequestHandling: {
                            insertHeaders: [{
                                name: "string",
                                value: "string",
                            }],
                        },
                    },
                    challenge: {
                        customRequestHandling: {
                            insertHeaders: [{
                                name: "string",
                                value: "string",
                            }],
                        },
                    },
                    count: {
                        customRequestHandling: {
                            insertHeaders: [{
                                name: "string",
                                value: "string",
                            }],
                        },
                    },
                },
            }],
            version: "string",
        },
        overrideAction: "string",
        region: "string",
        ruleGroupReference: {
            arn: "string",
            ruleActionOverrides: [{
                name: "string",
                actionToUse: {
                    allow: {
                        customRequestHandling: {
                            insertHeaders: [{
                                name: "string",
                                value: "string",
                            }],
                        },
                    },
                    block: {
                        customResponse: {
                            responseCode: 0,
                            customResponseBodyKey: "string",
                            responseHeaders: [{
                                name: "string",
                                value: "string",
                            }],
                        },
                    },
                    captcha: {
                        customRequestHandling: {
                            insertHeaders: [{
                                name: "string",
                                value: "string",
                            }],
                        },
                    },
                    challenge: {
                        customRequestHandling: {
                            insertHeaders: [{
                                name: "string",
                                value: "string",
                            }],
                        },
                    },
                    count: {
                        customRequestHandling: {
                            insertHeaders: [{
                                name: "string",
                                value: "string",
                            }],
                        },
                    },
                },
            }],
        },
        timeouts: {
            create: "string",
            "delete": "string",
            update: "string",
        },
        visibilityConfig: {
            cloudwatchMetricsEnabled: false,
            metricName: "string",
            sampledRequestsEnabled: false,
        },
    });
    
    type: aws:wafv2:WebAclRuleGroupAssociation
    properties:
        managedRuleGroup:
            managedRuleGroupConfigs:
                awsManagedRulesAcfpRuleSet:
                    creationPath: string
                    enableRegexInPath: false
                    registrationPagePath: string
                    requestInspection:
                        addressFields:
                            identifiers:
                                - string
                        emailField:
                            identifier: string
                        passwordField:
                            identifier: string
                        payloadType: string
                        phoneNumberFields:
                            identifiers:
                                - string
                        usernameField:
                            identifier: string
                    responseInspection:
                        bodyContains:
                            failureStrings:
                                - string
                            successStrings:
                                - string
                        header:
                            failureValues:
                                - string
                            name: string
                            successValues:
                                - string
                        json:
                            failureValues:
                                - string
                            identifier: string
                            successValues:
                                - string
                        statusCode:
                            failureCodes:
                                - 0
                            successCodes:
                                - 0
                awsManagedRulesAntiDdosRuleSet:
                    clientSideActionConfig:
                        challenge:
                            exemptUriRegularExpressions:
                                - regexString: string
                            sensitivity: string
                            usageOfAction: string
                    sensitivityToBlock: string
                awsManagedRulesAtpRuleSet:
                    enableRegexInPath: false
                    loginPath: string
                    requestInspection:
                        passwordField:
                            identifier: string
                        payloadType: string
                        usernameField:
                            identifier: string
                    responseInspection:
                        bodyContains:
                            failureStrings:
                                - string
                            successStrings:
                                - string
                        header:
                            failureValues:
                                - string
                            name: string
                            successValues:
                                - string
                        json:
                            failureValues:
                                - string
                            identifier: string
                            successValues:
                                - string
                        statusCode:
                            failureCodes:
                                - 0
                            successCodes:
                                - 0
                awsManagedRulesBotControlRuleSet:
                    enableMachineLearning: false
                    inspectionLevel: string
            name: string
            ruleActionOverrides:
                - actionToUse:
                    allow:
                        customRequestHandling:
                            insertHeaders:
                                - name: string
                                  value: string
                    block:
                        customResponse:
                            customResponseBodyKey: string
                            responseCode: 0
                            responseHeaders:
                                - name: string
                                  value: string
                    captcha:
                        customRequestHandling:
                            insertHeaders:
                                - name: string
                                  value: string
                    challenge:
                        customRequestHandling:
                            insertHeaders:
                                - name: string
                                  value: string
                    count:
                        customRequestHandling:
                            insertHeaders:
                                - name: string
                                  value: string
                  name: string
            vendorName: string
            version: string
        overrideAction: string
        priority: 0
        region: string
        ruleGroupReference:
            arn: string
            ruleActionOverrides:
                - actionToUse:
                    allow:
                        customRequestHandling:
                            insertHeaders:
                                - name: string
                                  value: string
                    block:
                        customResponse:
                            customResponseBodyKey: string
                            responseCode: 0
                            responseHeaders:
                                - name: string
                                  value: string
                    captcha:
                        customRequestHandling:
                            insertHeaders:
                                - name: string
                                  value: string
                    challenge:
                        customRequestHandling:
                            insertHeaders:
                                - name: string
                                  value: string
                    count:
                        customRequestHandling:
                            insertHeaders:
                                - name: string
                                  value: string
                  name: string
        ruleName: string
        timeouts:
            create: string
            delete: string
            update: string
        visibilityConfig:
            cloudwatchMetricsEnabled: false
            metricName: string
            sampledRequestsEnabled: false
        webAclArn: string
    

    WebAclRuleGroupAssociation Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The WebAclRuleGroupAssociation resource accepts the following input properties:

    Priority int
    Priority of the rule within the Web ACL. Rules are evaluated in order of priority, with lower numbers evaluated first.
    RuleName string
    Name of the rule to create in the Web ACL that references the rule group. Must be between 1 and 128 characters.
    WebAclArn string

    ARN of the Web ACL to associate the Rule Group with.

    The following arguments are optional:

    ManagedRuleGroup WebAclRuleGroupAssociationManagedRuleGroup
    Managed Rule Group configuration. One of rule_group_reference or managed_rule_group is required. Conflicts with rule_group_reference. See below.
    OverrideAction string
    Override action for the rule group. Valid values are none and count. Defaults to none. When set to count, the actions defined in the rule group rules are overridden to count matches instead of blocking or allowing requests.
    Region string
    Region where this resource will be managed. Defaults to the Region set in the provider configuration.
    RuleGroupReference WebAclRuleGroupAssociationRuleGroupReference
    Custom Rule Group reference configuration. One of rule_group_reference or managed_rule_group is required. Conflicts with managed_rule_group. See below.
    Timeouts WebAclRuleGroupAssociationTimeouts
    VisibilityConfig WebAclRuleGroupAssociationVisibilityConfig
    Defines and enables Amazon CloudWatch metrics and web request sample collection. See below.
    Priority int
    Priority of the rule within the Web ACL. Rules are evaluated in order of priority, with lower numbers evaluated first.
    RuleName string
    Name of the rule to create in the Web ACL that references the rule group. Must be between 1 and 128 characters.
    WebAclArn string

    ARN of the Web ACL to associate the Rule Group with.

    The following arguments are optional:

    ManagedRuleGroup WebAclRuleGroupAssociationManagedRuleGroupArgs
    Managed Rule Group configuration. One of rule_group_reference or managed_rule_group is required. Conflicts with rule_group_reference. See below.
    OverrideAction string
    Override action for the rule group. Valid values are none and count. Defaults to none. When set to count, the actions defined in the rule group rules are overridden to count matches instead of blocking or allowing requests.
    Region string
    Region where this resource will be managed. Defaults to the Region set in the provider configuration.
    RuleGroupReference WebAclRuleGroupAssociationRuleGroupReferenceArgs
    Custom Rule Group reference configuration. One of rule_group_reference or managed_rule_group is required. Conflicts with managed_rule_group. See below.
    Timeouts WebAclRuleGroupAssociationTimeoutsArgs
    VisibilityConfig WebAclRuleGroupAssociationVisibilityConfigArgs
    Defines and enables Amazon CloudWatch metrics and web request sample collection. See below.
    priority Integer
    Priority of the rule within the Web ACL. Rules are evaluated in order of priority, with lower numbers evaluated first.
    ruleName String
    Name of the rule to create in the Web ACL that references the rule group. Must be between 1 and 128 characters.
    webAclArn String

    ARN of the Web ACL to associate the Rule Group with.

    The following arguments are optional:

    managedRuleGroup WebAclRuleGroupAssociationManagedRuleGroup
    Managed Rule Group configuration. One of rule_group_reference or managed_rule_group is required. Conflicts with rule_group_reference. See below.
    overrideAction String
    Override action for the rule group. Valid values are none and count. Defaults to none. When set to count, the actions defined in the rule group rules are overridden to count matches instead of blocking or allowing requests.
    region String
    Region where this resource will be managed. Defaults to the Region set in the provider configuration.
    ruleGroupReference WebAclRuleGroupAssociationRuleGroupReference
    Custom Rule Group reference configuration. One of rule_group_reference or managed_rule_group is required. Conflicts with managed_rule_group. See below.
    timeouts WebAclRuleGroupAssociationTimeouts
    visibilityConfig WebAclRuleGroupAssociationVisibilityConfig
    Defines and enables Amazon CloudWatch metrics and web request sample collection. See below.
    priority number
    Priority of the rule within the Web ACL. Rules are evaluated in order of priority, with lower numbers evaluated first.
    ruleName string
    Name of the rule to create in the Web ACL that references the rule group. Must be between 1 and 128 characters.
    webAclArn string

    ARN of the Web ACL to associate the Rule Group with.

    The following arguments are optional:

    managedRuleGroup WebAclRuleGroupAssociationManagedRuleGroup
    Managed Rule Group configuration. One of rule_group_reference or managed_rule_group is required. Conflicts with rule_group_reference. See below.
    overrideAction string
    Override action for the rule group. Valid values are none and count. Defaults to none. When set to count, the actions defined in the rule group rules are overridden to count matches instead of blocking or allowing requests.
    region string
    Region where this resource will be managed. Defaults to the Region set in the provider configuration.
    ruleGroupReference WebAclRuleGroupAssociationRuleGroupReference
    Custom Rule Group reference configuration. One of rule_group_reference or managed_rule_group is required. Conflicts with managed_rule_group. See below.
    timeouts WebAclRuleGroupAssociationTimeouts
    visibilityConfig WebAclRuleGroupAssociationVisibilityConfig
    Defines and enables Amazon CloudWatch metrics and web request sample collection. See below.
    priority int
    Priority of the rule within the Web ACL. Rules are evaluated in order of priority, with lower numbers evaluated first.
    rule_name str
    Name of the rule to create in the Web ACL that references the rule group. Must be between 1 and 128 characters.
    web_acl_arn str

    ARN of the Web ACL to associate the Rule Group with.

    The following arguments are optional:

    managed_rule_group WebAclRuleGroupAssociationManagedRuleGroupArgs
    Managed Rule Group configuration. One of rule_group_reference or managed_rule_group is required. Conflicts with rule_group_reference. See below.
    override_action str
    Override action for the rule group. Valid values are none and count. Defaults to none. When set to count, the actions defined in the rule group rules are overridden to count matches instead of blocking or allowing requests.
    region str
    Region where this resource will be managed. Defaults to the Region set in the provider configuration.
    rule_group_reference WebAclRuleGroupAssociationRuleGroupReferenceArgs
    Custom Rule Group reference configuration. One of rule_group_reference or managed_rule_group is required. Conflicts with managed_rule_group. See below.
    timeouts WebAclRuleGroupAssociationTimeoutsArgs
    visibility_config WebAclRuleGroupAssociationVisibilityConfigArgs
    Defines and enables Amazon CloudWatch metrics and web request sample collection. See below.
    priority Number
    Priority of the rule within the Web ACL. Rules are evaluated in order of priority, with lower numbers evaluated first.
    ruleName String
    Name of the rule to create in the Web ACL that references the rule group. Must be between 1 and 128 characters.
    webAclArn String

    ARN of the Web ACL to associate the Rule Group with.

    The following arguments are optional:

    managedRuleGroup Property Map
    Managed Rule Group configuration. One of rule_group_reference or managed_rule_group is required. Conflicts with rule_group_reference. See below.
    overrideAction String
    Override action for the rule group. Valid values are none and count. Defaults to none. When set to count, the actions defined in the rule group rules are overridden to count matches instead of blocking or allowing requests.
    region String
    Region where this resource will be managed. Defaults to the Region set in the provider configuration.
    ruleGroupReference Property Map
    Custom Rule Group reference configuration. One of rule_group_reference or managed_rule_group is required. Conflicts with managed_rule_group. See below.
    timeouts Property Map
    visibilityConfig Property Map
    Defines and enables Amazon CloudWatch metrics and web request sample collection. See below.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the WebAclRuleGroupAssociation resource produces the following output properties:

    Id string
    The provider-assigned unique ID for this managed resource.
    Id string
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.
    id string
    The provider-assigned unique ID for this managed resource.
    id str
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.

    Look up Existing WebAclRuleGroupAssociation Resource

    Get an existing WebAclRuleGroupAssociation resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: WebAclRuleGroupAssociationState, opts?: CustomResourceOptions): WebAclRuleGroupAssociation
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            managed_rule_group: Optional[WebAclRuleGroupAssociationManagedRuleGroupArgs] = None,
            override_action: Optional[str] = None,
            priority: Optional[int] = None,
            region: Optional[str] = None,
            rule_group_reference: Optional[WebAclRuleGroupAssociationRuleGroupReferenceArgs] = None,
            rule_name: Optional[str] = None,
            timeouts: Optional[WebAclRuleGroupAssociationTimeoutsArgs] = None,
            visibility_config: Optional[WebAclRuleGroupAssociationVisibilityConfigArgs] = None,
            web_acl_arn: Optional[str] = None) -> WebAclRuleGroupAssociation
    func GetWebAclRuleGroupAssociation(ctx *Context, name string, id IDInput, state *WebAclRuleGroupAssociationState, opts ...ResourceOption) (*WebAclRuleGroupAssociation, error)
    public static WebAclRuleGroupAssociation Get(string name, Input<string> id, WebAclRuleGroupAssociationState? state, CustomResourceOptions? opts = null)
    public static WebAclRuleGroupAssociation get(String name, Output<String> id, WebAclRuleGroupAssociationState state, CustomResourceOptions options)
    resources:  _:    type: aws:wafv2:WebAclRuleGroupAssociation    get:      id: ${id}
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    ManagedRuleGroup WebAclRuleGroupAssociationManagedRuleGroup
    Managed Rule Group configuration. One of rule_group_reference or managed_rule_group is required. Conflicts with rule_group_reference. See below.
    OverrideAction string
    Override action for the rule group. Valid values are none and count. Defaults to none. When set to count, the actions defined in the rule group rules are overridden to count matches instead of blocking or allowing requests.
    Priority int
    Priority of the rule within the Web ACL. Rules are evaluated in order of priority, with lower numbers evaluated first.
    Region string
    Region where this resource will be managed. Defaults to the Region set in the provider configuration.
    RuleGroupReference WebAclRuleGroupAssociationRuleGroupReference
    Custom Rule Group reference configuration. One of rule_group_reference or managed_rule_group is required. Conflicts with managed_rule_group. See below.
    RuleName string
    Name of the rule to create in the Web ACL that references the rule group. Must be between 1 and 128 characters.
    Timeouts WebAclRuleGroupAssociationTimeouts
    VisibilityConfig WebAclRuleGroupAssociationVisibilityConfig
    Defines and enables Amazon CloudWatch metrics and web request sample collection. See below.
    WebAclArn string

    ARN of the Web ACL to associate the Rule Group with.

    The following arguments are optional:

    ManagedRuleGroup WebAclRuleGroupAssociationManagedRuleGroupArgs
    Managed Rule Group configuration. One of rule_group_reference or managed_rule_group is required. Conflicts with rule_group_reference. See below.
    OverrideAction string
    Override action for the rule group. Valid values are none and count. Defaults to none. When set to count, the actions defined in the rule group rules are overridden to count matches instead of blocking or allowing requests.
    Priority int
    Priority of the rule within the Web ACL. Rules are evaluated in order of priority, with lower numbers evaluated first.
    Region string
    Region where this resource will be managed. Defaults to the Region set in the provider configuration.
    RuleGroupReference WebAclRuleGroupAssociationRuleGroupReferenceArgs
    Custom Rule Group reference configuration. One of rule_group_reference or managed_rule_group is required. Conflicts with managed_rule_group. See below.
    RuleName string
    Name of the rule to create in the Web ACL that references the rule group. Must be between 1 and 128 characters.
    Timeouts WebAclRuleGroupAssociationTimeoutsArgs
    VisibilityConfig WebAclRuleGroupAssociationVisibilityConfigArgs
    Defines and enables Amazon CloudWatch metrics and web request sample collection. See below.
    WebAclArn string

    ARN of the Web ACL to associate the Rule Group with.

    The following arguments are optional:

    managedRuleGroup WebAclRuleGroupAssociationManagedRuleGroup
    Managed Rule Group configuration. One of rule_group_reference or managed_rule_group is required. Conflicts with rule_group_reference. See below.
    overrideAction String
    Override action for the rule group. Valid values are none and count. Defaults to none. When set to count, the actions defined in the rule group rules are overridden to count matches instead of blocking or allowing requests.
    priority Integer
    Priority of the rule within the Web ACL. Rules are evaluated in order of priority, with lower numbers evaluated first.
    region String
    Region where this resource will be managed. Defaults to the Region set in the provider configuration.
    ruleGroupReference WebAclRuleGroupAssociationRuleGroupReference
    Custom Rule Group reference configuration. One of rule_group_reference or managed_rule_group is required. Conflicts with managed_rule_group. See below.
    ruleName String
    Name of the rule to create in the Web ACL that references the rule group. Must be between 1 and 128 characters.
    timeouts WebAclRuleGroupAssociationTimeouts
    visibilityConfig WebAclRuleGroupAssociationVisibilityConfig
    Defines and enables Amazon CloudWatch metrics and web request sample collection. See below.
    webAclArn String

    ARN of the Web ACL to associate the Rule Group with.

    The following arguments are optional:

    managedRuleGroup WebAclRuleGroupAssociationManagedRuleGroup
    Managed Rule Group configuration. One of rule_group_reference or managed_rule_group is required. Conflicts with rule_group_reference. See below.
    overrideAction string
    Override action for the rule group. Valid values are none and count. Defaults to none. When set to count, the actions defined in the rule group rules are overridden to count matches instead of blocking or allowing requests.
    priority number
    Priority of the rule within the Web ACL. Rules are evaluated in order of priority, with lower numbers evaluated first.
    region string
    Region where this resource will be managed. Defaults to the Region set in the provider configuration.
    ruleGroupReference WebAclRuleGroupAssociationRuleGroupReference
    Custom Rule Group reference configuration. One of rule_group_reference or managed_rule_group is required. Conflicts with managed_rule_group. See below.
    ruleName string
    Name of the rule to create in the Web ACL that references the rule group. Must be between 1 and 128 characters.
    timeouts WebAclRuleGroupAssociationTimeouts
    visibilityConfig WebAclRuleGroupAssociationVisibilityConfig
    Defines and enables Amazon CloudWatch metrics and web request sample collection. See below.
    webAclArn string

    ARN of the Web ACL to associate the Rule Group with.

    The following arguments are optional:

    managed_rule_group WebAclRuleGroupAssociationManagedRuleGroupArgs
    Managed Rule Group configuration. One of rule_group_reference or managed_rule_group is required. Conflicts with rule_group_reference. See below.
    override_action str
    Override action for the rule group. Valid values are none and count. Defaults to none. When set to count, the actions defined in the rule group rules are overridden to count matches instead of blocking or allowing requests.
    priority int
    Priority of the rule within the Web ACL. Rules are evaluated in order of priority, with lower numbers evaluated first.
    region str
    Region where this resource will be managed. Defaults to the Region set in the provider configuration.
    rule_group_reference WebAclRuleGroupAssociationRuleGroupReferenceArgs
    Custom Rule Group reference configuration. One of rule_group_reference or managed_rule_group is required. Conflicts with managed_rule_group. See below.
    rule_name str
    Name of the rule to create in the Web ACL that references the rule group. Must be between 1 and 128 characters.
    timeouts WebAclRuleGroupAssociationTimeoutsArgs
    visibility_config WebAclRuleGroupAssociationVisibilityConfigArgs
    Defines and enables Amazon CloudWatch metrics and web request sample collection. See below.
    web_acl_arn str

    ARN of the Web ACL to associate the Rule Group with.

    The following arguments are optional:

    managedRuleGroup Property Map
    Managed Rule Group configuration. One of rule_group_reference or managed_rule_group is required. Conflicts with rule_group_reference. See below.
    overrideAction String
    Override action for the rule group. Valid values are none and count. Defaults to none. When set to count, the actions defined in the rule group rules are overridden to count matches instead of blocking or allowing requests.
    priority Number
    Priority of the rule within the Web ACL. Rules are evaluated in order of priority, with lower numbers evaluated first.
    region String
    Region where this resource will be managed. Defaults to the Region set in the provider configuration.
    ruleGroupReference Property Map
    Custom Rule Group reference configuration. One of rule_group_reference or managed_rule_group is required. Conflicts with managed_rule_group. See below.
    ruleName String
    Name of the rule to create in the Web ACL that references the rule group. Must be between 1 and 128 characters.
    timeouts Property Map
    visibilityConfig Property Map
    Defines and enables Amazon CloudWatch metrics and web request sample collection. See below.
    webAclArn String

    ARN of the Web ACL to associate the Rule Group with.

    The following arguments are optional:

    Supporting Types

    WebAclRuleGroupAssociationManagedRuleGroup, WebAclRuleGroupAssociationManagedRuleGroupArgs

    Name string
    Name of the managed rule group.
    VendorName string
    Name of the managed rule group vendor. For AWS managed rule groups, this is AWS.
    ManagedRuleGroupConfigs WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigs
    Additional information that's used by a managed rule group. Only one rule attribute is allowed in each config. See below.
    RuleActionOverrides List<WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverride>
    Override actions for specific rules within the rule group. See below.
    Version string
    Version of the managed rule group. If not specified, the default version is used.
    Name string
    Name of the managed rule group.
    VendorName string
    Name of the managed rule group vendor. For AWS managed rule groups, this is AWS.
    ManagedRuleGroupConfigs WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigs
    Additional information that's used by a managed rule group. Only one rule attribute is allowed in each config. See below.
    RuleActionOverrides []WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverride
    Override actions for specific rules within the rule group. See below.
    Version string
    Version of the managed rule group. If not specified, the default version is used.
    name String
    Name of the managed rule group.
    vendorName String
    Name of the managed rule group vendor. For AWS managed rule groups, this is AWS.
    managedRuleGroupConfigs WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigs
    Additional information that's used by a managed rule group. Only one rule attribute is allowed in each config. See below.
    ruleActionOverrides List<WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverride>
    Override actions for specific rules within the rule group. See below.
    version String
    Version of the managed rule group. If not specified, the default version is used.
    name string
    Name of the managed rule group.
    vendorName string
    Name of the managed rule group vendor. For AWS managed rule groups, this is AWS.
    managedRuleGroupConfigs WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigs
    Additional information that's used by a managed rule group. Only one rule attribute is allowed in each config. See below.
    ruleActionOverrides WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverride[]
    Override actions for specific rules within the rule group. See below.
    version string
    Version of the managed rule group. If not specified, the default version is used.
    name str
    Name of the managed rule group.
    vendor_name str
    Name of the managed rule group vendor. For AWS managed rule groups, this is AWS.
    managed_rule_group_configs WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigs
    Additional information that's used by a managed rule group. Only one rule attribute is allowed in each config. See below.
    rule_action_overrides Sequence[WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverride]
    Override actions for specific rules within the rule group. See below.
    version str
    Version of the managed rule group. If not specified, the default version is used.
    name String
    Name of the managed rule group.
    vendorName String
    Name of the managed rule group vendor. For AWS managed rule groups, this is AWS.
    managedRuleGroupConfigs Property Map
    Additional information that's used by a managed rule group. Only one rule attribute is allowed in each config. See below.
    ruleActionOverrides List<Property Map>
    Override actions for specific rules within the rule group. See below.
    version String
    Version of the managed rule group. If not specified, the default version is used.

    WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigs, WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsArgs

    AwsManagedRulesAcfpRuleSet WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSet
    Additional configuration for using the Account Creation Fraud Prevention managed rule group. Use this to specify information such as the registration page of your application and the type of content to accept or reject from the client. See below.
    AwsManagedRulesAntiDdosRuleSet WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAntiDdosRuleSet
    Configuration for using the anti-DDoS managed rule group. See below.
    AwsManagedRulesAtpRuleSet WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSet
    Additional configuration for using the Account Takeover Protection managed rule group. Use this to specify information such as the sign-in page of your application and the type of content to accept or reject from the client. See below.
    AwsManagedRulesBotControlRuleSet WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesBotControlRuleSet
    Additional configuration for using the Bot Control managed rule group. Use this to specify the inspection level that you want to use. See below.
    AwsManagedRulesAcfpRuleSet WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSet
    Additional configuration for using the Account Creation Fraud Prevention managed rule group. Use this to specify information such as the registration page of your application and the type of content to accept or reject from the client. See below.
    AwsManagedRulesAntiDdosRuleSet WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAntiDdosRuleSet
    Configuration for using the anti-DDoS managed rule group. See below.
    AwsManagedRulesAtpRuleSet WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSet
    Additional configuration for using the Account Takeover Protection managed rule group. Use this to specify information such as the sign-in page of your application and the type of content to accept or reject from the client. See below.
    AwsManagedRulesBotControlRuleSet WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesBotControlRuleSet
    Additional configuration for using the Bot Control managed rule group. Use this to specify the inspection level that you want to use. See below.
    awsManagedRulesAcfpRuleSet WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSet
    Additional configuration for using the Account Creation Fraud Prevention managed rule group. Use this to specify information such as the registration page of your application and the type of content to accept or reject from the client. See below.
    awsManagedRulesAntiDdosRuleSet WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAntiDdosRuleSet
    Configuration for using the anti-DDoS managed rule group. See below.
    awsManagedRulesAtpRuleSet WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSet
    Additional configuration for using the Account Takeover Protection managed rule group. Use this to specify information such as the sign-in page of your application and the type of content to accept or reject from the client. See below.
    awsManagedRulesBotControlRuleSet WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesBotControlRuleSet
    Additional configuration for using the Bot Control managed rule group. Use this to specify the inspection level that you want to use. See below.
    awsManagedRulesAcfpRuleSet WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSet
    Additional configuration for using the Account Creation Fraud Prevention managed rule group. Use this to specify information such as the registration page of your application and the type of content to accept or reject from the client. See below.
    awsManagedRulesAntiDdosRuleSet WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAntiDdosRuleSet
    Configuration for using the anti-DDoS managed rule group. See below.
    awsManagedRulesAtpRuleSet WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSet
    Additional configuration for using the Account Takeover Protection managed rule group. Use this to specify information such as the sign-in page of your application and the type of content to accept or reject from the client. See below.
    awsManagedRulesBotControlRuleSet WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesBotControlRuleSet
    Additional configuration for using the Bot Control managed rule group. Use this to specify the inspection level that you want to use. See below.
    aws_managed_rules_acfp_rule_set WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSet
    Additional configuration for using the Account Creation Fraud Prevention managed rule group. Use this to specify information such as the registration page of your application and the type of content to accept or reject from the client. See below.
    aws_managed_rules_anti_ddos_rule_set WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAntiDdosRuleSet
    Configuration for using the anti-DDoS managed rule group. See below.
    aws_managed_rules_atp_rule_set WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSet
    Additional configuration for using the Account Takeover Protection managed rule group. Use this to specify information such as the sign-in page of your application and the type of content to accept or reject from the client. See below.
    aws_managed_rules_bot_control_rule_set WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesBotControlRuleSet
    Additional configuration for using the Bot Control managed rule group. Use this to specify the inspection level that you want to use. See below.
    awsManagedRulesAcfpRuleSet Property Map
    Additional configuration for using the Account Creation Fraud Prevention managed rule group. Use this to specify information such as the registration page of your application and the type of content to accept or reject from the client. See below.
    awsManagedRulesAntiDdosRuleSet Property Map
    Configuration for using the anti-DDoS managed rule group. See below.
    awsManagedRulesAtpRuleSet Property Map
    Additional configuration for using the Account Takeover Protection managed rule group. Use this to specify information such as the sign-in page of your application and the type of content to accept or reject from the client. See below.
    awsManagedRulesBotControlRuleSet Property Map
    Additional configuration for using the Bot Control managed rule group. Use this to specify the inspection level that you want to use. See below.

    WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSet, WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetArgs

    CreationPath string
    Path of the account creation endpoint for your application. This is the page on your website that accepts the completed registration form for a new user. This page must accept POST requests.
    RegistrationPagePath string
    Path of the account registration endpoint for your application. This is the page on your website that presents the registration form to new users. This page must accept GET text/html requests.
    EnableRegexInPath bool
    Whether or not to allow the use of regular expressions in the login page path.
    RequestInspection WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspection
    Criteria for inspecting login requests, used by the ATP rule group to validate credentials usage. See below.
    ResponseInspection WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetResponseInspection
    Criteria for inspecting responses to login requests, used by the ATP rule group to track login failure rates. Note that Response Inspection is available only on web ACLs that protect CloudFront distributions. See below.
    CreationPath string
    Path of the account creation endpoint for your application. This is the page on your website that accepts the completed registration form for a new user. This page must accept POST requests.
    RegistrationPagePath string
    Path of the account registration endpoint for your application. This is the page on your website that presents the registration form to new users. This page must accept GET text/html requests.
    EnableRegexInPath bool
    Whether or not to allow the use of regular expressions in the login page path.
    RequestInspection WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspection
    Criteria for inspecting login requests, used by the ATP rule group to validate credentials usage. See below.
    ResponseInspection WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetResponseInspection
    Criteria for inspecting responses to login requests, used by the ATP rule group to track login failure rates. Note that Response Inspection is available only on web ACLs that protect CloudFront distributions. See below.
    creationPath String
    Path of the account creation endpoint for your application. This is the page on your website that accepts the completed registration form for a new user. This page must accept POST requests.
    registrationPagePath String
    Path of the account registration endpoint for your application. This is the page on your website that presents the registration form to new users. This page must accept GET text/html requests.
    enableRegexInPath Boolean
    Whether or not to allow the use of regular expressions in the login page path.
    requestInspection WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspection
    Criteria for inspecting login requests, used by the ATP rule group to validate credentials usage. See below.
    responseInspection WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetResponseInspection
    Criteria for inspecting responses to login requests, used by the ATP rule group to track login failure rates. Note that Response Inspection is available only on web ACLs that protect CloudFront distributions. See below.
    creationPath string
    Path of the account creation endpoint for your application. This is the page on your website that accepts the completed registration form for a new user. This page must accept POST requests.
    registrationPagePath string
    Path of the account registration endpoint for your application. This is the page on your website that presents the registration form to new users. This page must accept GET text/html requests.
    enableRegexInPath boolean
    Whether or not to allow the use of regular expressions in the login page path.
    requestInspection WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspection
    Criteria for inspecting login requests, used by the ATP rule group to validate credentials usage. See below.
    responseInspection WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetResponseInspection
    Criteria for inspecting responses to login requests, used by the ATP rule group to track login failure rates. Note that Response Inspection is available only on web ACLs that protect CloudFront distributions. See below.
    creation_path str
    Path of the account creation endpoint for your application. This is the page on your website that accepts the completed registration form for a new user. This page must accept POST requests.
    registration_page_path str
    Path of the account registration endpoint for your application. This is the page on your website that presents the registration form to new users. This page must accept GET text/html requests.
    enable_regex_in_path bool
    Whether or not to allow the use of regular expressions in the login page path.
    request_inspection WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspection
    Criteria for inspecting login requests, used by the ATP rule group to validate credentials usage. See below.
    response_inspection WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetResponseInspection
    Criteria for inspecting responses to login requests, used by the ATP rule group to track login failure rates. Note that Response Inspection is available only on web ACLs that protect CloudFront distributions. See below.
    creationPath String
    Path of the account creation endpoint for your application. This is the page on your website that accepts the completed registration form for a new user. This page must accept POST requests.
    registrationPagePath String
    Path of the account registration endpoint for your application. This is the page on your website that presents the registration form to new users. This page must accept GET text/html requests.
    enableRegexInPath Boolean
    Whether or not to allow the use of regular expressions in the login page path.
    requestInspection Property Map
    Criteria for inspecting login requests, used by the ATP rule group to validate credentials usage. See below.
    responseInspection Property Map
    Criteria for inspecting responses to login requests, used by the ATP rule group to track login failure rates. Note that Response Inspection is available only on web ACLs that protect CloudFront distributions. See below.

    WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspection, WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionArgs

    PayloadType string
    Payload type for your login endpoint, either JSON or form encoded.
    AddressFields WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionAddressFields
    Names of the fields in the request payload that contain your customer's primary physical address. See below.
    EmailField WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionEmailField
    Name of the field in the request payload that contains your customer's email. See below.
    PasswordField WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionPasswordField
    Details about your login page password field. See below.
    PhoneNumberFields WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionPhoneNumberFields
    Names of the fields in the request payload that contain your customer's primary phone number. See below.
    UsernameField WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionUsernameField
    Details about your login page username field. See below.
    PayloadType string
    Payload type for your login endpoint, either JSON or form encoded.
    AddressFields WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionAddressFields
    Names of the fields in the request payload that contain your customer's primary physical address. See below.
    EmailField WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionEmailField
    Name of the field in the request payload that contains your customer's email. See below.
    PasswordField WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionPasswordField
    Details about your login page password field. See below.
    PhoneNumberFields WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionPhoneNumberFields
    Names of the fields in the request payload that contain your customer's primary phone number. See below.
    UsernameField WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionUsernameField
    Details about your login page username field. See below.
    payloadType String
    Payload type for your login endpoint, either JSON or form encoded.
    addressFields WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionAddressFields
    Names of the fields in the request payload that contain your customer's primary physical address. See below.
    emailField WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionEmailField
    Name of the field in the request payload that contains your customer's email. See below.
    passwordField WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionPasswordField
    Details about your login page password field. See below.
    phoneNumberFields WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionPhoneNumberFields
    Names of the fields in the request payload that contain your customer's primary phone number. See below.
    usernameField WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionUsernameField
    Details about your login page username field. See below.
    payloadType string
    Payload type for your login endpoint, either JSON or form encoded.
    addressFields WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionAddressFields
    Names of the fields in the request payload that contain your customer's primary physical address. See below.
    emailField WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionEmailField
    Name of the field in the request payload that contains your customer's email. See below.
    passwordField WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionPasswordField
    Details about your login page password field. See below.
    phoneNumberFields WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionPhoneNumberFields
    Names of the fields in the request payload that contain your customer's primary phone number. See below.
    usernameField WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionUsernameField
    Details about your login page username field. See below.
    payload_type str
    Payload type for your login endpoint, either JSON or form encoded.
    address_fields WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionAddressFields
    Names of the fields in the request payload that contain your customer's primary physical address. See below.
    email_field WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionEmailField
    Name of the field in the request payload that contains your customer's email. See below.
    password_field WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionPasswordField
    Details about your login page password field. See below.
    phone_number_fields WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionPhoneNumberFields
    Names of the fields in the request payload that contain your customer's primary phone number. See below.
    username_field WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionUsernameField
    Details about your login page username field. See below.
    payloadType String
    Payload type for your login endpoint, either JSON or form encoded.
    addressFields Property Map
    Names of the fields in the request payload that contain your customer's primary physical address. See below.
    emailField Property Map
    Name of the field in the request payload that contains your customer's email. See below.
    passwordField Property Map
    Details about your login page password field. See below.
    phoneNumberFields Property Map
    Names of the fields in the request payload that contain your customer's primary phone number. See below.
    usernameField Property Map
    Details about your login page username field. See below.

    WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionAddressFields, WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionAddressFieldsArgs

    Identifiers List<string>
    Names of the address fields.
    Identifiers []string
    Names of the address fields.
    identifiers List<String>
    Names of the address fields.
    identifiers string[]
    Names of the address fields.
    identifiers Sequence[str]
    Names of the address fields.
    identifiers List<String>
    Names of the address fields.

    WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionEmailField, WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionEmailFieldArgs

    Identifier string
    Name of the field in the request payload that contains your customer's email.
    Identifier string
    Name of the field in the request payload that contains your customer's email.
    identifier String
    Name of the field in the request payload that contains your customer's email.
    identifier string
    Name of the field in the request payload that contains your customer's email.
    identifier str
    Name of the field in the request payload that contains your customer's email.
    identifier String
    Name of the field in the request payload that contains your customer's email.

    WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionPasswordField, WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionPasswordFieldArgs

    Identifier string
    Name of the password field.
    Identifier string
    Name of the password field.
    identifier String
    Name of the password field.
    identifier string
    Name of the password field.
    identifier str
    Name of the password field.
    identifier String
    Name of the password field.

    WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionPhoneNumberFields, WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionPhoneNumberFieldsArgs

    Identifiers List<string>
    Names of the phone number fields.
    Identifiers []string
    Names of the phone number fields.
    identifiers List<String>
    Names of the phone number fields.
    identifiers string[]
    Names of the phone number fields.
    identifiers Sequence[str]
    Names of the phone number fields.
    identifiers List<String>
    Names of the phone number fields.

    WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionUsernameField, WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetRequestInspectionUsernameFieldArgs

    Identifier string
    Name of the username field.
    Identifier string
    Name of the username field.
    identifier String
    Name of the username field.
    identifier string
    Name of the username field.
    identifier str
    Name of the username field.
    identifier String
    Name of the username field.

    WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetResponseInspection, WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetResponseInspectionArgs

    bodyContains Property Map
    Configures inspection of the response body. See below.
    header Property Map
    Configures inspection of the response header. See below.
    json Property Map
    Configures inspection of the response JSON. See below.
    statusCode Property Map
    Configures inspection of the response status code. See below.

    WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetResponseInspectionBodyContains, WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetResponseInspectionBodyContainsArgs

    FailureStrings List<string>
    Strings in the body of the response that indicate a failed login attempt.
    SuccessStrings List<string>
    Strings in the body of the response that indicate a successful login attempt.
    FailureStrings []string
    Strings in the body of the response that indicate a failed login attempt.
    SuccessStrings []string
    Strings in the body of the response that indicate a successful login attempt.
    failureStrings List<String>
    Strings in the body of the response that indicate a failed login attempt.
    successStrings List<String>
    Strings in the body of the response that indicate a successful login attempt.
    failureStrings string[]
    Strings in the body of the response that indicate a failed login attempt.
    successStrings string[]
    Strings in the body of the response that indicate a successful login attempt.
    failure_strings Sequence[str]
    Strings in the body of the response that indicate a failed login attempt.
    success_strings Sequence[str]
    Strings in the body of the response that indicate a successful login attempt.
    failureStrings List<String>
    Strings in the body of the response that indicate a failed login attempt.
    successStrings List<String>
    Strings in the body of the response that indicate a successful login attempt.

    WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetResponseInspectionHeader, WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetResponseInspectionHeaderArgs

    FailureValues List<string>
    Values in the response header with the specified name that indicate a failed login attempt.
    Name string
    Name of the header to match against. The name must be an exact match, including case.
    SuccessValues List<string>
    Values in the response header with the specified name that indicate a successful login attempt.
    FailureValues []string
    Values in the response header with the specified name that indicate a failed login attempt.
    Name string
    Name of the header to match against. The name must be an exact match, including case.
    SuccessValues []string
    Values in the response header with the specified name that indicate a successful login attempt.
    failureValues List<String>
    Values in the response header with the specified name that indicate a failed login attempt.
    name String
    Name of the header to match against. The name must be an exact match, including case.
    successValues List<String>
    Values in the response header with the specified name that indicate a successful login attempt.
    failureValues string[]
    Values in the response header with the specified name that indicate a failed login attempt.
    name string
    Name of the header to match against. The name must be an exact match, including case.
    successValues string[]
    Values in the response header with the specified name that indicate a successful login attempt.
    failure_values Sequence[str]
    Values in the response header with the specified name that indicate a failed login attempt.
    name str
    Name of the header to match against. The name must be an exact match, including case.
    success_values Sequence[str]
    Values in the response header with the specified name that indicate a successful login attempt.
    failureValues List<String>
    Values in the response header with the specified name that indicate a failed login attempt.
    name String
    Name of the header to match against. The name must be an exact match, including case.
    successValues List<String>
    Values in the response header with the specified name that indicate a successful login attempt.

    WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetResponseInspectionJson, WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetResponseInspectionJsonArgs

    FailureValues List<string>
    Strings that indicate a failed login or account creation attempt
    Identifier string
    Identifier for the value to match against in the JSON.
    SuccessValues List<string>
    Strings that indicate a successful login or account creation attempt
    FailureValues []string
    Strings that indicate a failed login or account creation attempt
    Identifier string
    Identifier for the value to match against in the JSON.
    SuccessValues []string
    Strings that indicate a successful login or account creation attempt
    failureValues List<String>
    Strings that indicate a failed login or account creation attempt
    identifier String
    Identifier for the value to match against in the JSON.
    successValues List<String>
    Strings that indicate a successful login or account creation attempt
    failureValues string[]
    Strings that indicate a failed login or account creation attempt
    identifier string
    Identifier for the value to match against in the JSON.
    successValues string[]
    Strings that indicate a successful login or account creation attempt
    failure_values Sequence[str]
    Strings that indicate a failed login or account creation attempt
    identifier str
    Identifier for the value to match against in the JSON.
    success_values Sequence[str]
    Strings that indicate a successful login or account creation attempt
    failureValues List<String>
    Strings that indicate a failed login or account creation attempt
    identifier String
    Identifier for the value to match against in the JSON.
    successValues List<String>
    Strings that indicate a successful login or account creation attempt

    WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetResponseInspectionStatusCode, WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAcfpRuleSetResponseInspectionStatusCodeArgs

    FailureCodes List<int>
    Status codes in the response that indicate a failed login attempt.
    SuccessCodes List<int>
    Status codes in the response that indicate a successful login attempt.
    FailureCodes []int
    Status codes in the response that indicate a failed login attempt.
    SuccessCodes []int
    Status codes in the response that indicate a successful login attempt.
    failureCodes List<Integer>
    Status codes in the response that indicate a failed login attempt.
    successCodes List<Integer>
    Status codes in the response that indicate a successful login attempt.
    failureCodes number[]
    Status codes in the response that indicate a failed login attempt.
    successCodes number[]
    Status codes in the response that indicate a successful login attempt.
    failure_codes Sequence[int]
    Status codes in the response that indicate a failed login attempt.
    success_codes Sequence[int]
    Status codes in the response that indicate a successful login attempt.
    failureCodes List<Number>
    Status codes in the response that indicate a failed login attempt.
    successCodes List<Number>
    Status codes in the response that indicate a successful login attempt.

    WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAntiDdosRuleSet, WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAntiDdosRuleSetArgs

    ClientSideActionConfig WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAntiDdosRuleSetClientSideActionConfig
    Configuration for the request handling that's applied by the managed rule group rules ChallengeAllDuringEvent and ChallengeDDoSRequests during a distributed denial of service (DDoS) attack. See below.
    SensitivityToBlock string
    Sensitivity that the rule group rule DDoSRequests uses when matching against the DDoS suspicion labeling on a request. Valid values are LOW (Default), MEDIUM, and HIGH.
    ClientSideActionConfig WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAntiDdosRuleSetClientSideActionConfig
    Configuration for the request handling that's applied by the managed rule group rules ChallengeAllDuringEvent and ChallengeDDoSRequests during a distributed denial of service (DDoS) attack. See below.
    SensitivityToBlock string
    Sensitivity that the rule group rule DDoSRequests uses when matching against the DDoS suspicion labeling on a request. Valid values are LOW (Default), MEDIUM, and HIGH.
    clientSideActionConfig WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAntiDdosRuleSetClientSideActionConfig
    Configuration for the request handling that's applied by the managed rule group rules ChallengeAllDuringEvent and ChallengeDDoSRequests during a distributed denial of service (DDoS) attack. See below.
    sensitivityToBlock String
    Sensitivity that the rule group rule DDoSRequests uses when matching against the DDoS suspicion labeling on a request. Valid values are LOW (Default), MEDIUM, and HIGH.
    clientSideActionConfig WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAntiDdosRuleSetClientSideActionConfig
    Configuration for the request handling that's applied by the managed rule group rules ChallengeAllDuringEvent and ChallengeDDoSRequests during a distributed denial of service (DDoS) attack. See below.
    sensitivityToBlock string
    Sensitivity that the rule group rule DDoSRequests uses when matching against the DDoS suspicion labeling on a request. Valid values are LOW (Default), MEDIUM, and HIGH.
    client_side_action_config WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAntiDdosRuleSetClientSideActionConfig
    Configuration for the request handling that's applied by the managed rule group rules ChallengeAllDuringEvent and ChallengeDDoSRequests during a distributed denial of service (DDoS) attack. See below.
    sensitivity_to_block str
    Sensitivity that the rule group rule DDoSRequests uses when matching against the DDoS suspicion labeling on a request. Valid values are LOW (Default), MEDIUM, and HIGH.
    clientSideActionConfig Property Map
    Configuration for the request handling that's applied by the managed rule group rules ChallengeAllDuringEvent and ChallengeDDoSRequests during a distributed denial of service (DDoS) attack. See below.
    sensitivityToBlock String
    Sensitivity that the rule group rule DDoSRequests uses when matching against the DDoS suspicion labeling on a request. Valid values are LOW (Default), MEDIUM, and HIGH.

    WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAntiDdosRuleSetClientSideActionConfig, WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAntiDdosRuleSetClientSideActionConfigArgs

    Challenge WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAntiDdosRuleSetClientSideActionConfigChallenge
    Configuration for the use of the AWSManagedRulesAntiDDoSRuleSet rules ChallengeAllDuringEvent and ChallengeDDoSRequests. See below.
    Challenge WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAntiDdosRuleSetClientSideActionConfigChallenge
    Configuration for the use of the AWSManagedRulesAntiDDoSRuleSet rules ChallengeAllDuringEvent and ChallengeDDoSRequests. See below.
    challenge WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAntiDdosRuleSetClientSideActionConfigChallenge
    Configuration for the use of the AWSManagedRulesAntiDDoSRuleSet rules ChallengeAllDuringEvent and ChallengeDDoSRequests. See below.
    challenge WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAntiDdosRuleSetClientSideActionConfigChallenge
    Configuration for the use of the AWSManagedRulesAntiDDoSRuleSet rules ChallengeAllDuringEvent and ChallengeDDoSRequests. See below.
    challenge WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAntiDdosRuleSetClientSideActionConfigChallenge
    Configuration for the use of the AWSManagedRulesAntiDDoSRuleSet rules ChallengeAllDuringEvent and ChallengeDDoSRequests. See below.
    challenge Property Map
    Configuration for the use of the AWSManagedRulesAntiDDoSRuleSet rules ChallengeAllDuringEvent and ChallengeDDoSRequests. See below.

    WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAntiDdosRuleSetClientSideActionConfigChallenge, WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAntiDdosRuleSetClientSideActionConfigChallengeArgs

    UsageOfAction string
    Configuration whether to use the AWSManagedRulesAntiDDoSRuleSet rules ChallengeAllDuringEvent and ChallengeDDoSRequests in the rule group evaluation. Valid values are ENABLED and DISABLED.
    ExemptUriRegularExpressions List<WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAntiDdosRuleSetClientSideActionConfigChallengeExemptUriRegularExpression>
    Block for the list of the regular expressions to match against the web request URI, used to identify requests that can't handle a silent browser challenge. See below.
    Sensitivity string
    Sensitivity that the rule group rule ChallengeDDoSRequests uses when matching against the DDoS suspicion labeling on a request. Valid values are LOW, MEDIUM and HIGH (Default).
    UsageOfAction string
    Configuration whether to use the AWSManagedRulesAntiDDoSRuleSet rules ChallengeAllDuringEvent and ChallengeDDoSRequests in the rule group evaluation. Valid values are ENABLED and DISABLED.
    ExemptUriRegularExpressions []WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAntiDdosRuleSetClientSideActionConfigChallengeExemptUriRegularExpression
    Block for the list of the regular expressions to match against the web request URI, used to identify requests that can't handle a silent browser challenge. See below.
    Sensitivity string
    Sensitivity that the rule group rule ChallengeDDoSRequests uses when matching against the DDoS suspicion labeling on a request. Valid values are LOW, MEDIUM and HIGH (Default).
    usageOfAction String
    Configuration whether to use the AWSManagedRulesAntiDDoSRuleSet rules ChallengeAllDuringEvent and ChallengeDDoSRequests in the rule group evaluation. Valid values are ENABLED and DISABLED.
    exemptUriRegularExpressions List<WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAntiDdosRuleSetClientSideActionConfigChallengeExemptUriRegularExpression>
    Block for the list of the regular expressions to match against the web request URI, used to identify requests that can't handle a silent browser challenge. See below.
    sensitivity String
    Sensitivity that the rule group rule ChallengeDDoSRequests uses when matching against the DDoS suspicion labeling on a request. Valid values are LOW, MEDIUM and HIGH (Default).
    usageOfAction string
    Configuration whether to use the AWSManagedRulesAntiDDoSRuleSet rules ChallengeAllDuringEvent and ChallengeDDoSRequests in the rule group evaluation. Valid values are ENABLED and DISABLED.
    exemptUriRegularExpressions WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAntiDdosRuleSetClientSideActionConfigChallengeExemptUriRegularExpression[]
    Block for the list of the regular expressions to match against the web request URI, used to identify requests that can't handle a silent browser challenge. See below.
    sensitivity string
    Sensitivity that the rule group rule ChallengeDDoSRequests uses when matching against the DDoS suspicion labeling on a request. Valid values are LOW, MEDIUM and HIGH (Default).
    usage_of_action str
    Configuration whether to use the AWSManagedRulesAntiDDoSRuleSet rules ChallengeAllDuringEvent and ChallengeDDoSRequests in the rule group evaluation. Valid values are ENABLED and DISABLED.
    exempt_uri_regular_expressions Sequence[WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAntiDdosRuleSetClientSideActionConfigChallengeExemptUriRegularExpression]
    Block for the list of the regular expressions to match against the web request URI, used to identify requests that can't handle a silent browser challenge. See below.
    sensitivity str
    Sensitivity that the rule group rule ChallengeDDoSRequests uses when matching against the DDoS suspicion labeling on a request. Valid values are LOW, MEDIUM and HIGH (Default).
    usageOfAction String
    Configuration whether to use the AWSManagedRulesAntiDDoSRuleSet rules ChallengeAllDuringEvent and ChallengeDDoSRequests in the rule group evaluation. Valid values are ENABLED and DISABLED.
    exemptUriRegularExpressions List<Property Map>
    Block for the list of the regular expressions to match against the web request URI, used to identify requests that can't handle a silent browser challenge. See below.
    sensitivity String
    Sensitivity that the rule group rule ChallengeDDoSRequests uses when matching against the DDoS suspicion labeling on a request. Valid values are LOW, MEDIUM and HIGH (Default).

    WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAntiDdosRuleSetClientSideActionConfigChallengeExemptUriRegularExpression, WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAntiDdosRuleSetClientSideActionConfigChallengeExemptUriRegularExpressionArgs

    RegexString string
    Regular expression string.
    RegexString string
    Regular expression string.
    regexString String
    Regular expression string.
    regexString string
    Regular expression string.
    regex_string str
    Regular expression string.
    regexString String
    Regular expression string.

    WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSet, WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetArgs

    LoginPath string
    Path of the login endpoint for your application.
    EnableRegexInPath bool
    Whether or not to allow the use of regular expressions in the login page path.
    RequestInspection WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetRequestInspection
    Criteria for inspecting login requests, used by the ATP rule group to validate credentials usage. See below.
    ResponseInspection WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetResponseInspection
    Criteria for inspecting responses to login requests, used by the ATP rule group to track login failure rates. Note that Response Inspection is available only on web ACLs that protect CloudFront distributions. See below.
    LoginPath string
    Path of the login endpoint for your application.
    EnableRegexInPath bool
    Whether or not to allow the use of regular expressions in the login page path.
    RequestInspection WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetRequestInspection
    Criteria for inspecting login requests, used by the ATP rule group to validate credentials usage. See below.
    ResponseInspection WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetResponseInspection
    Criteria for inspecting responses to login requests, used by the ATP rule group to track login failure rates. Note that Response Inspection is available only on web ACLs that protect CloudFront distributions. See below.
    loginPath String
    Path of the login endpoint for your application.
    enableRegexInPath Boolean
    Whether or not to allow the use of regular expressions in the login page path.
    requestInspection WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetRequestInspection
    Criteria for inspecting login requests, used by the ATP rule group to validate credentials usage. See below.
    responseInspection WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetResponseInspection
    Criteria for inspecting responses to login requests, used by the ATP rule group to track login failure rates. Note that Response Inspection is available only on web ACLs that protect CloudFront distributions. See below.
    loginPath string
    Path of the login endpoint for your application.
    enableRegexInPath boolean
    Whether or not to allow the use of regular expressions in the login page path.
    requestInspection WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetRequestInspection
    Criteria for inspecting login requests, used by the ATP rule group to validate credentials usage. See below.
    responseInspection WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetResponseInspection
    Criteria for inspecting responses to login requests, used by the ATP rule group to track login failure rates. Note that Response Inspection is available only on web ACLs that protect CloudFront distributions. See below.
    login_path str
    Path of the login endpoint for your application.
    enable_regex_in_path bool
    Whether or not to allow the use of regular expressions in the login page path.
    request_inspection WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetRequestInspection
    Criteria for inspecting login requests, used by the ATP rule group to validate credentials usage. See below.
    response_inspection WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetResponseInspection
    Criteria for inspecting responses to login requests, used by the ATP rule group to track login failure rates. Note that Response Inspection is available only on web ACLs that protect CloudFront distributions. See below.
    loginPath String
    Path of the login endpoint for your application.
    enableRegexInPath Boolean
    Whether or not to allow the use of regular expressions in the login page path.
    requestInspection Property Map
    Criteria for inspecting login requests, used by the ATP rule group to validate credentials usage. See below.
    responseInspection Property Map
    Criteria for inspecting responses to login requests, used by the ATP rule group to track login failure rates. Note that Response Inspection is available only on web ACLs that protect CloudFront distributions. See below.

    WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetRequestInspection, WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetRequestInspectionArgs

    PayloadType string
    Payload type for your login endpoint, either JSON or form encoded.
    PasswordField WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetRequestInspectionPasswordField
    Details about your login page password field. See below.
    UsernameField WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetRequestInspectionUsernameField
    Details about your login page username field. See below.
    PayloadType string
    Payload type for your login endpoint, either JSON or form encoded.
    PasswordField WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetRequestInspectionPasswordField
    Details about your login page password field. See below.
    UsernameField WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetRequestInspectionUsernameField
    Details about your login page username field. See below.
    payloadType String
    Payload type for your login endpoint, either JSON or form encoded.
    passwordField WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetRequestInspectionPasswordField
    Details about your login page password field. See below.
    usernameField WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetRequestInspectionUsernameField
    Details about your login page username field. See below.
    payloadType string
    Payload type for your login endpoint, either JSON or form encoded.
    passwordField WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetRequestInspectionPasswordField
    Details about your login page password field. See below.
    usernameField WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetRequestInspectionUsernameField
    Details about your login page username field. See below.
    payloadType String
    Payload type for your login endpoint, either JSON or form encoded.
    passwordField Property Map
    Details about your login page password field. See below.
    usernameField Property Map
    Details about your login page username field. See below.

    WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetRequestInspectionPasswordField, WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetRequestInspectionPasswordFieldArgs

    Identifier string
    Name of the password field.
    Identifier string
    Name of the password field.
    identifier String
    Name of the password field.
    identifier string
    Name of the password field.
    identifier str
    Name of the password field.
    identifier String
    Name of the password field.

    WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetRequestInspectionUsernameField, WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetRequestInspectionUsernameFieldArgs

    Identifier string
    Name of the username field.
    Identifier string
    Name of the username field.
    identifier String
    Name of the username field.
    identifier string
    Name of the username field.
    identifier str
    Name of the username field.
    identifier String
    Name of the username field.

    WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetResponseInspection, WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetResponseInspectionArgs

    bodyContains Property Map
    Configures inspection of the response body. See below.
    header Property Map
    Configures inspection of the response header. See below.
    json Property Map
    Configures inspection of the response JSON. See below.
    statusCode Property Map
    Configures inspection of the response status code. See below.

    WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetResponseInspectionBodyContains, WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetResponseInspectionBodyContainsArgs

    FailureStrings List<string>
    Strings in the body of the response that indicate a failed login attempt.
    SuccessStrings List<string>
    Strings in the body of the response that indicate a successful login attempt.
    FailureStrings []string
    Strings in the body of the response that indicate a failed login attempt.
    SuccessStrings []string
    Strings in the body of the response that indicate a successful login attempt.
    failureStrings List<String>
    Strings in the body of the response that indicate a failed login attempt.
    successStrings List<String>
    Strings in the body of the response that indicate a successful login attempt.
    failureStrings string[]
    Strings in the body of the response that indicate a failed login attempt.
    successStrings string[]
    Strings in the body of the response that indicate a successful login attempt.
    failure_strings Sequence[str]
    Strings in the body of the response that indicate a failed login attempt.
    success_strings Sequence[str]
    Strings in the body of the response that indicate a successful login attempt.
    failureStrings List<String>
    Strings in the body of the response that indicate a failed login attempt.
    successStrings List<String>
    Strings in the body of the response that indicate a successful login attempt.

    WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetResponseInspectionHeader, WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetResponseInspectionHeaderArgs

    FailureValues List<string>
    Values in the response header with the specified name that indicate a failed login attempt.
    Name string
    Name of the header to match against. The name must be an exact match, including case.
    SuccessValues List<string>
    Values in the response header with the specified name that indicate a successful login attempt.
    FailureValues []string
    Values in the response header with the specified name that indicate a failed login attempt.
    Name string
    Name of the header to match against. The name must be an exact match, including case.
    SuccessValues []string
    Values in the response header with the specified name that indicate a successful login attempt.
    failureValues List<String>
    Values in the response header with the specified name that indicate a failed login attempt.
    name String
    Name of the header to match against. The name must be an exact match, including case.
    successValues List<String>
    Values in the response header with the specified name that indicate a successful login attempt.
    failureValues string[]
    Values in the response header with the specified name that indicate a failed login attempt.
    name string
    Name of the header to match against. The name must be an exact match, including case.
    successValues string[]
    Values in the response header with the specified name that indicate a successful login attempt.
    failure_values Sequence[str]
    Values in the response header with the specified name that indicate a failed login attempt.
    name str
    Name of the header to match against. The name must be an exact match, including case.
    success_values Sequence[str]
    Values in the response header with the specified name that indicate a successful login attempt.
    failureValues List<String>
    Values in the response header with the specified name that indicate a failed login attempt.
    name String
    Name of the header to match against. The name must be an exact match, including case.
    successValues List<String>
    Values in the response header with the specified name that indicate a successful login attempt.

    WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetResponseInspectionJson, WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetResponseInspectionJsonArgs

    FailureValues List<string>
    Strings that indicate a failed login or account creation attempt
    Identifier string
    Identifier for the value to match against in the JSON.
    SuccessValues List<string>
    Strings that indicate a successful login or account creation attempt
    FailureValues []string
    Strings that indicate a failed login or account creation attempt
    Identifier string
    Identifier for the value to match against in the JSON.
    SuccessValues []string
    Strings that indicate a successful login or account creation attempt
    failureValues List<String>
    Strings that indicate a failed login or account creation attempt
    identifier String
    Identifier for the value to match against in the JSON.
    successValues List<String>
    Strings that indicate a successful login or account creation attempt
    failureValues string[]
    Strings that indicate a failed login or account creation attempt
    identifier string
    Identifier for the value to match against in the JSON.
    successValues string[]
    Strings that indicate a successful login or account creation attempt
    failure_values Sequence[str]
    Strings that indicate a failed login or account creation attempt
    identifier str
    Identifier for the value to match against in the JSON.
    success_values Sequence[str]
    Strings that indicate a successful login or account creation attempt
    failureValues List<String>
    Strings that indicate a failed login or account creation attempt
    identifier String
    Identifier for the value to match against in the JSON.
    successValues List<String>
    Strings that indicate a successful login or account creation attempt

    WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetResponseInspectionStatusCode, WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesAtpRuleSetResponseInspectionStatusCodeArgs

    FailureCodes List<int>
    Status codes in the response that indicate a failed login attempt.
    SuccessCodes List<int>
    Status codes in the response that indicate a successful login attempt.
    FailureCodes []int
    Status codes in the response that indicate a failed login attempt.
    SuccessCodes []int
    Status codes in the response that indicate a successful login attempt.
    failureCodes List<Integer>
    Status codes in the response that indicate a failed login attempt.
    successCodes List<Integer>
    Status codes in the response that indicate a successful login attempt.
    failureCodes number[]
    Status codes in the response that indicate a failed login attempt.
    successCodes number[]
    Status codes in the response that indicate a successful login attempt.
    failure_codes Sequence[int]
    Status codes in the response that indicate a failed login attempt.
    success_codes Sequence[int]
    Status codes in the response that indicate a successful login attempt.
    failureCodes List<Number>
    Status codes in the response that indicate a failed login attempt.
    successCodes List<Number>
    Status codes in the response that indicate a successful login attempt.

    WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesBotControlRuleSet, WebAclRuleGroupAssociationManagedRuleGroupManagedRuleGroupConfigsAwsManagedRulesBotControlRuleSetArgs

    InspectionLevel string
    Inspection level to use for the Bot Control rule group.
    EnableMachineLearning bool
    Applies only to the targeted inspection level. Determines whether to use machine learning (ML) to analyze your web traffic for bot-related activity. Defaults to false.
    InspectionLevel string
    Inspection level to use for the Bot Control rule group.
    EnableMachineLearning bool
    Applies only to the targeted inspection level. Determines whether to use machine learning (ML) to analyze your web traffic for bot-related activity. Defaults to false.
    inspectionLevel String
    Inspection level to use for the Bot Control rule group.
    enableMachineLearning Boolean
    Applies only to the targeted inspection level. Determines whether to use machine learning (ML) to analyze your web traffic for bot-related activity. Defaults to false.
    inspectionLevel string
    Inspection level to use for the Bot Control rule group.
    enableMachineLearning boolean
    Applies only to the targeted inspection level. Determines whether to use machine learning (ML) to analyze your web traffic for bot-related activity. Defaults to false.
    inspection_level str
    Inspection level to use for the Bot Control rule group.
    enable_machine_learning bool
    Applies only to the targeted inspection level. Determines whether to use machine learning (ML) to analyze your web traffic for bot-related activity. Defaults to false.
    inspectionLevel String
    Inspection level to use for the Bot Control rule group.
    enableMachineLearning Boolean
    Applies only to the targeted inspection level. Determines whether to use machine learning (ML) to analyze your web traffic for bot-related activity. Defaults to false.

    WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverride, WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideArgs

    Name string
    Name of the rule to override within the rule group. Verify the name carefully. With managed rule groups, WAF silently ignores any override that uses an invalid rule name. With customer-owned rule groups, invalid rule names in your overrides will cause web ACL updates to fail. An invalid rule name is any name that doesn't exactly match the case-sensitive name of an existing rule in the rule group.
    ActionToUse WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUse
    Action to use instead of the rule's original action. See below.
    Name string
    Name of the rule to override within the rule group. Verify the name carefully. With managed rule groups, WAF silently ignores any override that uses an invalid rule name. With customer-owned rule groups, invalid rule names in your overrides will cause web ACL updates to fail. An invalid rule name is any name that doesn't exactly match the case-sensitive name of an existing rule in the rule group.
    ActionToUse WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUse
    Action to use instead of the rule's original action. See below.
    name String
    Name of the rule to override within the rule group. Verify the name carefully. With managed rule groups, WAF silently ignores any override that uses an invalid rule name. With customer-owned rule groups, invalid rule names in your overrides will cause web ACL updates to fail. An invalid rule name is any name that doesn't exactly match the case-sensitive name of an existing rule in the rule group.
    actionToUse WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUse
    Action to use instead of the rule's original action. See below.
    name string
    Name of the rule to override within the rule group. Verify the name carefully. With managed rule groups, WAF silently ignores any override that uses an invalid rule name. With customer-owned rule groups, invalid rule names in your overrides will cause web ACL updates to fail. An invalid rule name is any name that doesn't exactly match the case-sensitive name of an existing rule in the rule group.
    actionToUse WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUse
    Action to use instead of the rule's original action. See below.
    name str
    Name of the rule to override within the rule group. Verify the name carefully. With managed rule groups, WAF silently ignores any override that uses an invalid rule name. With customer-owned rule groups, invalid rule names in your overrides will cause web ACL updates to fail. An invalid rule name is any name that doesn't exactly match the case-sensitive name of an existing rule in the rule group.
    action_to_use WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUse
    Action to use instead of the rule's original action. See below.
    name String
    Name of the rule to override within the rule group. Verify the name carefully. With managed rule groups, WAF silently ignores any override that uses an invalid rule name. With customer-owned rule groups, invalid rule names in your overrides will cause web ACL updates to fail. An invalid rule name is any name that doesn't exactly match the case-sensitive name of an existing rule in the rule group.
    actionToUse Property Map
    Action to use instead of the rule's original action. See below.

    WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUse, WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseArgs

    allow Property Map
    Allow the request. See below.
    block Property Map
    Block the request. See below.
    captcha Property Map
    Require CAPTCHA verification. See below.
    challenge Property Map
    Require challenge verification. See below.
    count Property Map
    Count the request without taking action. See below.

    WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseAllow, WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseAllowArgs

    customRequestHandling Property Map
    Custom handling for allowed requests. See below.

    WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseAllowCustomRequestHandling, WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseAllowCustomRequestHandlingArgs

    insertHeaders List<Property Map>
    Headers to insert into the request. See below.

    WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseAllowCustomRequestHandlingInsertHeader, WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseAllowCustomRequestHandlingInsertHeaderArgs

    Name string
    Name of the header to insert.
    Value string
    Value of the header to insert.
    Name string
    Name of the header to insert.
    Value string
    Value of the header to insert.
    name String
    Name of the header to insert.
    value String
    Value of the header to insert.
    name string
    Name of the header to insert.
    value string
    Value of the header to insert.
    name str
    Name of the header to insert.
    value str
    Value of the header to insert.
    name String
    Name of the header to insert.
    value String
    Value of the header to insert.

    WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseBlock, WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseBlockArgs

    customResponse Property Map
    Custom response for blocked requests. See below.

    WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseBlockCustomResponse, WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseBlockCustomResponseArgs

    ResponseCode int
    HTTP response code to return (200-599).
    CustomResponseBodyKey string
    Key of a custom response body to use.
    ResponseHeaders List<WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseBlockCustomResponseResponseHeader>
    Headers to include in the response. See below.
    ResponseCode int
    HTTP response code to return (200-599).
    CustomResponseBodyKey string
    Key of a custom response body to use.
    ResponseHeaders []WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseBlockCustomResponseResponseHeader
    Headers to include in the response. See below.
    responseCode Integer
    HTTP response code to return (200-599).
    customResponseBodyKey String
    Key of a custom response body to use.
    responseHeaders List<WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseBlockCustomResponseResponseHeader>
    Headers to include in the response. See below.
    responseCode number
    HTTP response code to return (200-599).
    customResponseBodyKey string
    Key of a custom response body to use.
    responseHeaders WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseBlockCustomResponseResponseHeader[]
    Headers to include in the response. See below.
    response_code int
    HTTP response code to return (200-599).
    custom_response_body_key str
    Key of a custom response body to use.
    response_headers Sequence[WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseBlockCustomResponseResponseHeader]
    Headers to include in the response. See below.
    responseCode Number
    HTTP response code to return (200-599).
    customResponseBodyKey String
    Key of a custom response body to use.
    responseHeaders List<Property Map>
    Headers to include in the response. See below.

    WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseBlockCustomResponseResponseHeader, WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseBlockCustomResponseResponseHeaderArgs

    Name string
    Name of the response header.
    Value string
    Value of the response header.
    Name string
    Name of the response header.
    Value string
    Value of the response header.
    name String
    Name of the response header.
    value String
    Value of the response header.
    name string
    Name of the response header.
    value string
    Value of the response header.
    name str
    Name of the response header.
    value str
    Value of the response header.
    name String
    Name of the response header.
    value String
    Value of the response header.

    WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseCaptcha, WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseCaptchaArgs

    customRequestHandling Property Map
    Custom handling for CAPTCHA requests. See below.

    WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseCaptchaCustomRequestHandling, WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseCaptchaCustomRequestHandlingArgs

    insertHeaders List<Property Map>
    Headers to insert into the request. See below.

    WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseCaptchaCustomRequestHandlingInsertHeader, WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseCaptchaCustomRequestHandlingInsertHeaderArgs

    Name string
    Name of the header to insert.
    Value string
    Value of the header to insert.
    Name string
    Name of the header to insert.
    Value string
    Value of the header to insert.
    name String
    Name of the header to insert.
    value String
    Value of the header to insert.
    name string
    Name of the header to insert.
    value string
    Value of the header to insert.
    name str
    Name of the header to insert.
    value str
    Value of the header to insert.
    name String
    Name of the header to insert.
    value String
    Value of the header to insert.

    WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseChallenge, WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseChallengeArgs

    customRequestHandling Property Map
    Custom handling for challenge requests. See below.

    WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseChallengeCustomRequestHandling, WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseChallengeCustomRequestHandlingArgs

    insertHeaders List<Property Map>
    Headers to insert into the request. See below.

    WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseChallengeCustomRequestHandlingInsertHeader, WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseChallengeCustomRequestHandlingInsertHeaderArgs

    Name string
    Name of the header to insert.
    Value string
    Value of the header to insert.
    Name string
    Name of the header to insert.
    Value string
    Value of the header to insert.
    name String
    Name of the header to insert.
    value String
    Value of the header to insert.
    name string
    Name of the header to insert.
    value string
    Value of the header to insert.
    name str
    Name of the header to insert.
    value str
    Value of the header to insert.
    name String
    Name of the header to insert.
    value String
    Value of the header to insert.

    WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseCount, WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseCountArgs

    customRequestHandling Property Map
    Custom handling for counted requests. See below.

    WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseCountCustomRequestHandling, WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseCountCustomRequestHandlingArgs

    insertHeaders List<Property Map>
    Headers to insert into the request. See below.

    WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseCountCustomRequestHandlingInsertHeader, WebAclRuleGroupAssociationManagedRuleGroupRuleActionOverrideActionToUseCountCustomRequestHandlingInsertHeaderArgs

    Name string
    Name of the header to insert.
    Value string
    Value of the header to insert.
    Name string
    Name of the header to insert.
    Value string
    Value of the header to insert.
    name String
    Name of the header to insert.
    value String
    Value of the header to insert.
    name string
    Name of the header to insert.
    value string
    Value of the header to insert.
    name str
    Name of the header to insert.
    value str
    Value of the header to insert.
    name String
    Name of the header to insert.
    value String
    Value of the header to insert.

    WebAclRuleGroupAssociationRuleGroupReference, WebAclRuleGroupAssociationRuleGroupReferenceArgs

    Arn string
    ARN of the Rule Group to associate with the Web ACL.
    RuleActionOverrides List<WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverride>
    Override actions for specific rules within the rule group. See below.
    Arn string
    ARN of the Rule Group to associate with the Web ACL.
    RuleActionOverrides []WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverride
    Override actions for specific rules within the rule group. See below.
    arn String
    ARN of the Rule Group to associate with the Web ACL.
    ruleActionOverrides List<WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverride>
    Override actions for specific rules within the rule group. See below.
    arn string
    ARN of the Rule Group to associate with the Web ACL.
    ruleActionOverrides WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverride[]
    Override actions for specific rules within the rule group. See below.
    arn str
    ARN of the Rule Group to associate with the Web ACL.
    rule_action_overrides Sequence[WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverride]
    Override actions for specific rules within the rule group. See below.
    arn String
    ARN of the Rule Group to associate with the Web ACL.
    ruleActionOverrides List<Property Map>
    Override actions for specific rules within the rule group. See below.

    WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverride, WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideArgs

    Name string
    Name of the rule to override within the rule group. Verify the name carefully. With managed rule groups, WAF silently ignores any override that uses an invalid rule name. With customer-owned rule groups, invalid rule names in your overrides will cause web ACL updates to fail. An invalid rule name is any name that doesn't exactly match the case-sensitive name of an existing rule in the rule group.
    ActionToUse WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUse
    Action to use instead of the rule's original action. See below.
    Name string
    Name of the rule to override within the rule group. Verify the name carefully. With managed rule groups, WAF silently ignores any override that uses an invalid rule name. With customer-owned rule groups, invalid rule names in your overrides will cause web ACL updates to fail. An invalid rule name is any name that doesn't exactly match the case-sensitive name of an existing rule in the rule group.
    ActionToUse WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUse
    Action to use instead of the rule's original action. See below.
    name String
    Name of the rule to override within the rule group. Verify the name carefully. With managed rule groups, WAF silently ignores any override that uses an invalid rule name. With customer-owned rule groups, invalid rule names in your overrides will cause web ACL updates to fail. An invalid rule name is any name that doesn't exactly match the case-sensitive name of an existing rule in the rule group.
    actionToUse WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUse
    Action to use instead of the rule's original action. See below.
    name string
    Name of the rule to override within the rule group. Verify the name carefully. With managed rule groups, WAF silently ignores any override that uses an invalid rule name. With customer-owned rule groups, invalid rule names in your overrides will cause web ACL updates to fail. An invalid rule name is any name that doesn't exactly match the case-sensitive name of an existing rule in the rule group.
    actionToUse WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUse
    Action to use instead of the rule's original action. See below.
    name str
    Name of the rule to override within the rule group. Verify the name carefully. With managed rule groups, WAF silently ignores any override that uses an invalid rule name. With customer-owned rule groups, invalid rule names in your overrides will cause web ACL updates to fail. An invalid rule name is any name that doesn't exactly match the case-sensitive name of an existing rule in the rule group.
    action_to_use WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUse
    Action to use instead of the rule's original action. See below.
    name String
    Name of the rule to override within the rule group. Verify the name carefully. With managed rule groups, WAF silently ignores any override that uses an invalid rule name. With customer-owned rule groups, invalid rule names in your overrides will cause web ACL updates to fail. An invalid rule name is any name that doesn't exactly match the case-sensitive name of an existing rule in the rule group.
    actionToUse Property Map
    Action to use instead of the rule's original action. See below.

    WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUse, WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseArgs

    allow Property Map
    Allow the request. See below.
    block Property Map
    Block the request. See below.
    captcha Property Map
    Require CAPTCHA verification. See below.
    challenge Property Map
    Require challenge verification. See below.
    count Property Map
    Count the request without taking action. See below.

    WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseAllow, WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseAllowArgs

    customRequestHandling Property Map
    Custom handling for allowed requests. See below.

    WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseAllowCustomRequestHandling, WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseAllowCustomRequestHandlingArgs

    insertHeaders List<Property Map>
    Headers to insert into the request. See below.

    WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseAllowCustomRequestHandlingInsertHeader, WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseAllowCustomRequestHandlingInsertHeaderArgs

    Name string
    Name of the header to insert.
    Value string
    Value of the header to insert.
    Name string
    Name of the header to insert.
    Value string
    Value of the header to insert.
    name String
    Name of the header to insert.
    value String
    Value of the header to insert.
    name string
    Name of the header to insert.
    value string
    Value of the header to insert.
    name str
    Name of the header to insert.
    value str
    Value of the header to insert.
    name String
    Name of the header to insert.
    value String
    Value of the header to insert.

    WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseBlock, WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseBlockArgs

    customResponse Property Map
    Custom response for blocked requests. See below.

    WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseBlockCustomResponse, WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseBlockCustomResponseArgs

    ResponseCode int
    HTTP response code to return (200-599).
    CustomResponseBodyKey string
    Key of a custom response body to use.
    ResponseHeaders List<WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseBlockCustomResponseResponseHeader>
    Headers to include in the response. See below.
    ResponseCode int
    HTTP response code to return (200-599).
    CustomResponseBodyKey string
    Key of a custom response body to use.
    ResponseHeaders []WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseBlockCustomResponseResponseHeader
    Headers to include in the response. See below.
    responseCode Integer
    HTTP response code to return (200-599).
    customResponseBodyKey String
    Key of a custom response body to use.
    responseHeaders List<WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseBlockCustomResponseResponseHeader>
    Headers to include in the response. See below.
    responseCode number
    HTTP response code to return (200-599).
    customResponseBodyKey string
    Key of a custom response body to use.
    responseHeaders WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseBlockCustomResponseResponseHeader[]
    Headers to include in the response. See below.
    response_code int
    HTTP response code to return (200-599).
    custom_response_body_key str
    Key of a custom response body to use.
    response_headers Sequence[WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseBlockCustomResponseResponseHeader]
    Headers to include in the response. See below.
    responseCode Number
    HTTP response code to return (200-599).
    customResponseBodyKey String
    Key of a custom response body to use.
    responseHeaders List<Property Map>
    Headers to include in the response. See below.

    WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseBlockCustomResponseResponseHeader, WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseBlockCustomResponseResponseHeaderArgs

    Name string
    Name of the response header.
    Value string
    Value of the response header.
    Name string
    Name of the response header.
    Value string
    Value of the response header.
    name String
    Name of the response header.
    value String
    Value of the response header.
    name string
    Name of the response header.
    value string
    Value of the response header.
    name str
    Name of the response header.
    value str
    Value of the response header.
    name String
    Name of the response header.
    value String
    Value of the response header.

    WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCaptcha, WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCaptchaArgs

    customRequestHandling Property Map
    Custom handling for CAPTCHA requests. See below.

    WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCaptchaCustomRequestHandling, WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCaptchaCustomRequestHandlingArgs

    insertHeaders List<Property Map>
    Headers to insert into the request. See below.

    WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCaptchaCustomRequestHandlingInsertHeader, WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCaptchaCustomRequestHandlingInsertHeaderArgs

    Name string
    Name of the header to insert.
    Value string
    Value of the header to insert.
    Name string
    Name of the header to insert.
    Value string
    Value of the header to insert.
    name String
    Name of the header to insert.
    value String
    Value of the header to insert.
    name string
    Name of the header to insert.
    value string
    Value of the header to insert.
    name str
    Name of the header to insert.
    value str
    Value of the header to insert.
    name String
    Name of the header to insert.
    value String
    Value of the header to insert.

    WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseChallenge, WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseChallengeArgs

    customRequestHandling Property Map
    Custom handling for challenge requests. See below.

    WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseChallengeCustomRequestHandling, WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseChallengeCustomRequestHandlingArgs

    insertHeaders List<Property Map>
    Headers to insert into the request. See below.

    WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseChallengeCustomRequestHandlingInsertHeader, WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseChallengeCustomRequestHandlingInsertHeaderArgs

    Name string
    Name of the header to insert.
    Value string
    Value of the header to insert.
    Name string
    Name of the header to insert.
    Value string
    Value of the header to insert.
    name String
    Name of the header to insert.
    value String
    Value of the header to insert.
    name string
    Name of the header to insert.
    value string
    Value of the header to insert.
    name str
    Name of the header to insert.
    value str
    Value of the header to insert.
    name String
    Name of the header to insert.
    value String
    Value of the header to insert.

    WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCount, WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCountArgs

    customRequestHandling Property Map
    Custom handling for counted requests. See below.

    WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCountCustomRequestHandling, WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCountCustomRequestHandlingArgs

    insertHeaders List<Property Map>
    Headers to insert into the request. See below.

    WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCountCustomRequestHandlingInsertHeader, WebAclRuleGroupAssociationRuleGroupReferenceRuleActionOverrideActionToUseCountCustomRequestHandlingInsertHeaderArgs

    Name string
    Name of the header to insert.
    Value string
    Value of the header to insert.
    Name string
    Name of the header to insert.
    Value string
    Value of the header to insert.
    name String
    Name of the header to insert.
    value String
    Value of the header to insert.
    name string
    Name of the header to insert.
    value string
    Value of the header to insert.
    name str
    Name of the header to insert.
    value str
    Value of the header to insert.
    name String
    Name of the header to insert.
    value String
    Value of the header to insert.

    WebAclRuleGroupAssociationTimeouts, WebAclRuleGroupAssociationTimeoutsArgs

    Create string
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    Delete string
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.
    Update string
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    Create string
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    Delete string
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.
    Update string
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    create String
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    delete String
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.
    update String
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    create string
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    delete string
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.
    update string
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    create str
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    delete str
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.
    update str
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    create String
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
    delete String
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.
    update String
    A string that can be parsed as a duration consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).

    WebAclRuleGroupAssociationVisibilityConfig, WebAclRuleGroupAssociationVisibilityConfigArgs

    CloudwatchMetricsEnabled bool
    Whether the associated resource sends metrics to CloudWatch. For the list of available metrics, see AWS WAF Metrics.
    MetricName string
    Friendly name of the CloudWatch metric. The name can contain only alphanumeric characters (A-Z, a-z, 0-9) hyphen(-) and underscore (_), with length from one to 128 characters. It can't contain whitespace or metric names reserved for AWS WAF, for example All and Default_Action.
    SampledRequestsEnabled bool
    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.
    CloudwatchMetricsEnabled bool
    Whether the associated resource sends metrics to CloudWatch. For the list of available metrics, see AWS WAF Metrics.
    MetricName string
    Friendly name of the CloudWatch metric. The name can contain only alphanumeric characters (A-Z, a-z, 0-9) hyphen(-) and underscore (_), with length from one to 128 characters. It can't contain whitespace or metric names reserved for AWS WAF, for example All and Default_Action.
    SampledRequestsEnabled bool
    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.
    cloudwatchMetricsEnabled Boolean
    Whether the associated resource sends metrics to CloudWatch. For the list of available metrics, see AWS WAF Metrics.
    metricName String
    Friendly name of the CloudWatch metric. The name can contain only alphanumeric characters (A-Z, a-z, 0-9) hyphen(-) and underscore (_), with length from one to 128 characters. It can't contain whitespace or metric names reserved for AWS WAF, for example All and Default_Action.
    sampledRequestsEnabled Boolean
    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.
    cloudwatchMetricsEnabled boolean
    Whether the associated resource sends metrics to CloudWatch. For the list of available metrics, see AWS WAF Metrics.
    metricName string
    Friendly name of the CloudWatch metric. The name can contain only alphanumeric characters (A-Z, a-z, 0-9) hyphen(-) and underscore (_), with length from one to 128 characters. It can't contain whitespace or metric names reserved for AWS WAF, for example All and Default_Action.
    sampledRequestsEnabled boolean
    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.
    cloudwatch_metrics_enabled bool
    Whether the associated resource sends metrics to CloudWatch. For the list of available metrics, see AWS WAF Metrics.
    metric_name str
    Friendly name of the CloudWatch metric. The name can contain only alphanumeric characters (A-Z, a-z, 0-9) hyphen(-) and underscore (_), with length from one to 128 characters. It can't contain whitespace or metric names reserved for AWS WAF, for example All and Default_Action.
    sampled_requests_enabled bool
    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.
    cloudwatchMetricsEnabled Boolean
    Whether the associated resource sends metrics to CloudWatch. For the list of available metrics, see AWS WAF Metrics.
    metricName String
    Friendly name of the CloudWatch metric. The name can contain only alphanumeric characters (A-Z, a-z, 0-9) hyphen(-) and underscore (_), with length from one to 128 characters. It can't contain whitespace or metric names reserved for AWS WAF, for example All and Default_Action.
    sampledRequestsEnabled Boolean
    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.

    Import

    Using pulumi import, import WAFv2 web ACL custom rule group associations using WebACLARN,RuleGroupARN,RuleName. For example:

    $ pulumi import aws:wafv2/webAclRuleGroupAssociation:WebAclRuleGroupAssociation example "arn:aws:wafv2:us-east-1:123456789012:regional/webacl/example-web-acl/12345678-1234-1234-1234-123456789012,arn:aws:wafv2:us-east-1:123456789012:regional/rulegroup/example-rule-group/87654321-4321-4321-4321-210987654321,example-rule-group-rule"
    

    Using pulumi import, import WAFv2 web ACL managed rule group associations using WebACLARN,VendorName:RuleGroupName[:Version],RuleName. For example:

    $ pulumi import aws:wafv2/webAclRuleGroupAssociation:WebAclRuleGroupAssociation managed_example "arn:aws:wafv2:us-east-1:123456789012:regional/webacl/example-web-acl/12345678-1234-1234-1234-123456789012,AWS:AWSManagedRulesCommonRuleSet,aws-common-rule-set"
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    AWS Classic pulumi/pulumi-aws
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the aws Terraform Provider.
    aws logo
    Viewing docs for AWS v7.22.0
    published on Wednesday, Mar 11, 2026 by Pulumi
      Try Pulumi Cloud free. Your team will thank you.