1. Packages
  2. Avi Provider
  3. API Docs
  4. Wafpolicy
avi 31.1.1 published on Monday, Apr 14, 2025 by vmware

avi.Wafpolicy

Explore with Pulumi AI

avi logo
avi 31.1.1 published on Monday, Apr 14, 2025 by vmware

    <!–

    Copyright 2021 VMware, Inc.
    SPDX-License-Identifier: Mozilla Public License 2.0
    

    –>

    layout: “avi”

    page_title: “Avi: avi.Wafpolicy” sidebar_current: “docs-avi-resource-wafpolicy” description: |- Creates and manages Avi WafPolicy.

    avi.Wafpolicy

    The WafPolicy resource allows the creation and management of Avi WafPolicy

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as avi from "@pulumi/avi";
    
    const foo = new avi.Wafpolicy("foo", {tenantRef: "/api/tenant/?name=admin"});
    
    import pulumi
    import pulumi_avi as avi
    
    foo = avi.Wafpolicy("foo", tenant_ref="/api/tenant/?name=admin")
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-terraform-provider/sdks/go/avi/v31/avi"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := avi.NewWafpolicy(ctx, "foo", &avi.WafpolicyArgs{
    			TenantRef: pulumi.String("/api/tenant/?name=admin"),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Avi = Pulumi.Avi;
    
    return await Deployment.RunAsync(() => 
    {
        var foo = new Avi.Wafpolicy("foo", new()
        {
            TenantRef = "/api/tenant/?name=admin",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.avi.Wafpolicy;
    import com.pulumi.avi.WafpolicyArgs;
    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 foo = new Wafpolicy("foo", WafpolicyArgs.builder()
                .tenantRef("/api/tenant/?name=admin")
                .build());
    
        }
    }
    
    resources:
      foo:
        type: avi:Wafpolicy
        properties:
          tenantRef: /api/tenant/?name=admin
    

    Create Wafpolicy Resource

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

    Constructor syntax

    new Wafpolicy(name: string, args: WafpolicyArgs, opts?: CustomResourceOptions);
    @overload
    def Wafpolicy(resource_name: str,
                  args: WafpolicyArgs,
                  opts: Optional[ResourceOptions] = None)
    
    @overload
    def Wafpolicy(resource_name: str,
                  opts: Optional[ResourceOptions] = None,
                  waf_profile_ref: Optional[str] = None,
                  geo_db_ref: Optional[str] = None,
                  positive_security_models: Optional[Sequence[WafpolicyPositiveSecurityModelArgs]] = None,
                  auto_update_crs: Optional[str] = None,
                  bypass_static_extensions: Optional[str] = None,
                  confidence_overrides: Optional[Sequence[WafpolicyConfidenceOverrideArgs]] = None,
                  configpb_attributes: Optional[Sequence[WafpolicyConfigpbAttributeArgs]] = None,
                  created_by: Optional[str] = None,
                  crs_overrides: Optional[Sequence[WafpolicyCrsOverrideArgs]] = None,
                  description: Optional[str] = None,
                  enable_app_learning: Optional[str] = None,
                  enable_auto_rule_updates: Optional[str] = None,
                  enable_regex_learning: Optional[str] = None,
                  failure_mode: Optional[str] = None,
                  allow_mode_delegation: Optional[str] = None,
                  application_signatures: Optional[Sequence[WafpolicyApplicationSignatureArgs]] = None,
                  learning_params: Optional[Sequence[WafpolicyLearningParamArgs]] = None,
                  pre_crs_groups: Optional[Sequence[WafpolicyPreCrsGroupArgs]] = None,
                  mode: Optional[str] = None,
                  name: Optional[str] = None,
                  paranoia_level: Optional[str] = None,
                  markers: Optional[Sequence[WafpolicyMarkerArgs]] = None,
                  post_crs_groups: Optional[Sequence[WafpolicyPostCrsGroupArgs]] = None,
                  min_confidence: Optional[str] = None,
                  required_data_files: Optional[Sequence[WafpolicyRequiredDataFileArgs]] = None,
                  tenant_ref: Optional[str] = None,
                  updated_crs_rules_in_detection_mode: Optional[str] = None,
                  uuid: Optional[str] = None,
                  waf_crs_ref: Optional[str] = None,
                  allowlists: Optional[Sequence[WafpolicyAllowlistArgs]] = None,
                  wafpolicy_id: Optional[str] = None)
    func NewWafpolicy(ctx *Context, name string, args WafpolicyArgs, opts ...ResourceOption) (*Wafpolicy, error)
    public Wafpolicy(string name, WafpolicyArgs args, CustomResourceOptions? opts = null)
    public Wafpolicy(String name, WafpolicyArgs args)
    public Wafpolicy(String name, WafpolicyArgs args, CustomResourceOptions options)
    
    type: avi:Wafpolicy
    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 WafpolicyArgs
    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 WafpolicyArgs
    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 WafpolicyArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args WafpolicyArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args WafpolicyArgs
    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 wafpolicyResource = new Avi.Wafpolicy("wafpolicyResource", new()
    {
        WafProfileRef = "string",
        GeoDbRef = "string",
        PositiveSecurityModels = new[]
        {
            new Avi.Inputs.WafpolicyPositiveSecurityModelArgs
            {
                GroupRefs = new[]
                {
                    "string",
                },
            },
        },
        AutoUpdateCrs = "string",
        BypassStaticExtensions = "string",
        ConfidenceOverrides = new[]
        {
            new Avi.Inputs.WafpolicyConfidenceOverrideArgs
            {
                ConfidHighValue = "string",
                ConfidLowValue = "string",
                ConfidProbableValue = "string",
                ConfidVeryHighValue = "string",
            },
        },
        ConfigpbAttributes = new[]
        {
            new Avi.Inputs.WafpolicyConfigpbAttributeArgs
            {
                Version = "string",
            },
        },
        CreatedBy = "string",
        CrsOverrides = new[]
        {
            new Avi.Inputs.WafpolicyCrsOverrideArgs
            {
                Name = "string",
                Enable = "string",
                ExcludeLists = new[]
                {
                    new Avi.Inputs.WafpolicyCrsOverrideExcludeListArgs
                    {
                        ClientSubnets = new[]
                        {
                            new Avi.Inputs.WafpolicyCrsOverrideExcludeListClientSubnetArgs
                            {
                                IpAddrs = new[]
                                {
                                    new Avi.Inputs.WafpolicyCrsOverrideExcludeListClientSubnetIpAddrArgs
                                    {
                                        Addr = "string",
                                        Type = "string",
                                    },
                                },
                                Mask = "string",
                            },
                        },
                        Description = "string",
                        MatchElement = "string",
                        MatchElementCriterias = new[]
                        {
                            new Avi.Inputs.WafpolicyCrsOverrideExcludeListMatchElementCriteriaArgs
                            {
                                MatchCase = "string",
                                MatchOp = "string",
                            },
                        },
                        UriMatchCriterias = new[]
                        {
                            new Avi.Inputs.WafpolicyCrsOverrideExcludeListUriMatchCriteriaArgs
                            {
                                MatchCase = "string",
                                MatchOp = "string",
                            },
                        },
                        UriPath = "string",
                    },
                },
                Mode = "string",
                RuleOverrides = new[]
                {
                    new Avi.Inputs.WafpolicyCrsOverrideRuleOverrideArgs
                    {
                        RuleId = "string",
                        Enable = "string",
                        ExcludeLists = new[]
                        {
                            new Avi.Inputs.WafpolicyCrsOverrideRuleOverrideExcludeListArgs
                            {
                                ClientSubnets = new[]
                                {
                                    new Avi.Inputs.WafpolicyCrsOverrideRuleOverrideExcludeListClientSubnetArgs
                                    {
                                        IpAddrs = new[]
                                        {
                                            new Avi.Inputs.WafpolicyCrsOverrideRuleOverrideExcludeListClientSubnetIpAddrArgs
                                            {
                                                Addr = "string",
                                                Type = "string",
                                            },
                                        },
                                        Mask = "string",
                                    },
                                },
                                Description = "string",
                                MatchElement = "string",
                                MatchElementCriterias = new[]
                                {
                                    new Avi.Inputs.WafpolicyCrsOverrideRuleOverrideExcludeListMatchElementCriteriaArgs
                                    {
                                        MatchCase = "string",
                                        MatchOp = "string",
                                    },
                                },
                                UriMatchCriterias = new[]
                                {
                                    new Avi.Inputs.WafpolicyCrsOverrideRuleOverrideExcludeListUriMatchCriteriaArgs
                                    {
                                        MatchCase = "string",
                                        MatchOp = "string",
                                    },
                                },
                                UriPath = "string",
                            },
                        },
                        Mode = "string",
                    },
                },
            },
        },
        Description = "string",
        EnableAppLearning = "string",
        EnableAutoRuleUpdates = "string",
        EnableRegexLearning = "string",
        FailureMode = "string",
        AllowModeDelegation = "string",
        ApplicationSignatures = new[]
        {
            new Avi.Inputs.WafpolicyApplicationSignatureArgs
            {
                ProviderRef = "string",
                ResolvedRules = new[]
                {
                    new Avi.Inputs.WafpolicyApplicationSignatureResolvedRuleArgs
                    {
                        Index = "string",
                        Rule = "string",
                        Enable = "string",
                        ExcludeLists = new[]
                        {
                            new Avi.Inputs.WafpolicyApplicationSignatureResolvedRuleExcludeListArgs
                            {
                                ClientSubnets = new[]
                                {
                                    new Avi.Inputs.WafpolicyApplicationSignatureResolvedRuleExcludeListClientSubnetArgs
                                    {
                                        IpAddrs = new[]
                                        {
                                            new Avi.Inputs.WafpolicyApplicationSignatureResolvedRuleExcludeListClientSubnetIpAddrArgs
                                            {
                                                Addr = "string",
                                                Type = "string",
                                            },
                                        },
                                        Mask = "string",
                                    },
                                },
                                Description = "string",
                                MatchElement = "string",
                                MatchElementCriterias = new[]
                                {
                                    new Avi.Inputs.WafpolicyApplicationSignatureResolvedRuleExcludeListMatchElementCriteriaArgs
                                    {
                                        MatchCase = "string",
                                        MatchOp = "string",
                                    },
                                },
                                UriMatchCriterias = new[]
                                {
                                    new Avi.Inputs.WafpolicyApplicationSignatureResolvedRuleExcludeListUriMatchCriteriaArgs
                                    {
                                        MatchCase = "string",
                                        MatchOp = "string",
                                    },
                                },
                                UriPath = "string",
                            },
                        },
                        IsSensitive = "string",
                        Mode = "string",
                        Name = "string",
                        ParanoiaLevel = "string",
                        Phase = "string",
                        RuleId = "string",
                        Tags = new[]
                        {
                            "string",
                        },
                    },
                },
                RuleOverrides = new[]
                {
                    new Avi.Inputs.WafpolicyApplicationSignatureRuleOverrideArgs
                    {
                        RuleId = "string",
                        Enable = "string",
                        ExcludeLists = new[]
                        {
                            new Avi.Inputs.WafpolicyApplicationSignatureRuleOverrideExcludeListArgs
                            {
                                ClientSubnets = new[]
                                {
                                    new Avi.Inputs.WafpolicyApplicationSignatureRuleOverrideExcludeListClientSubnetArgs
                                    {
                                        IpAddrs = new[]
                                        {
                                            new Avi.Inputs.WafpolicyApplicationSignatureRuleOverrideExcludeListClientSubnetIpAddrArgs
                                            {
                                                Addr = "string",
                                                Type = "string",
                                            },
                                        },
                                        Mask = "string",
                                    },
                                },
                                Description = "string",
                                MatchElement = "string",
                                MatchElementCriterias = new[]
                                {
                                    new Avi.Inputs.WafpolicyApplicationSignatureRuleOverrideExcludeListMatchElementCriteriaArgs
                                    {
                                        MatchCase = "string",
                                        MatchOp = "string",
                                    },
                                },
                                UriMatchCriterias = new[]
                                {
                                    new Avi.Inputs.WafpolicyApplicationSignatureRuleOverrideExcludeListUriMatchCriteriaArgs
                                    {
                                        MatchCase = "string",
                                        MatchOp = "string",
                                    },
                                },
                                UriPath = "string",
                            },
                        },
                        Mode = "string",
                    },
                },
                RulesetVersion = "string",
                SelectedApplications = new[]
                {
                    "string",
                },
            },
        },
        LearningParams = new[]
        {
            new Avi.Inputs.WafpolicyLearningParamArgs
            {
                EnableLearnFromBots = "string",
                EnablePerUriLearning = "string",
                LearnFromAuthenticatedClientsOnly = "string",
                LearnFromBots = new[]
                {
                    new Avi.Inputs.WafpolicyLearningParamLearnFromBotArgs
                    {
                        MatchOperation = "string",
                        Classifications = new[]
                        {
                            new Avi.Inputs.WafpolicyLearningParamLearnFromBotClassificationArgs
                            {
                                Type = "string",
                                UserDefinedType = "string",
                            },
                        },
                    },
                },
                MaxParams = "string",
                MaxUris = "string",
                MinHitsToLearn = "string",
                SamplingPercent = "string",
                TrustedIpgroupRef = "string",
                UpdateInterval = "string",
            },
        },
        PreCrsGroups = new[]
        {
            new Avi.Inputs.WafpolicyPreCrsGroupArgs
            {
                Index = "string",
                Name = "string",
                Enable = "string",
                ExcludeLists = new[]
                {
                    new Avi.Inputs.WafpolicyPreCrsGroupExcludeListArgs
                    {
                        ClientSubnets = new[]
                        {
                            new Avi.Inputs.WafpolicyPreCrsGroupExcludeListClientSubnetArgs
                            {
                                IpAddrs = new[]
                                {
                                    new Avi.Inputs.WafpolicyPreCrsGroupExcludeListClientSubnetIpAddrArgs
                                    {
                                        Addr = "string",
                                        Type = "string",
                                    },
                                },
                                Mask = "string",
                            },
                        },
                        Description = "string",
                        MatchElement = "string",
                        MatchElementCriterias = new[]
                        {
                            new Avi.Inputs.WafpolicyPreCrsGroupExcludeListMatchElementCriteriaArgs
                            {
                                MatchCase = "string",
                                MatchOp = "string",
                            },
                        },
                        UriMatchCriterias = new[]
                        {
                            new Avi.Inputs.WafpolicyPreCrsGroupExcludeListUriMatchCriteriaArgs
                            {
                                MatchCase = "string",
                                MatchOp = "string",
                            },
                        },
                        UriPath = "string",
                    },
                },
                Rules = new[]
                {
                    new Avi.Inputs.WafpolicyPreCrsGroupRuleArgs
                    {
                        Index = "string",
                        Rule = "string",
                        Enable = "string",
                        ExcludeLists = new[]
                        {
                            new Avi.Inputs.WafpolicyPreCrsGroupRuleExcludeListArgs
                            {
                                ClientSubnets = new[]
                                {
                                    new Avi.Inputs.WafpolicyPreCrsGroupRuleExcludeListClientSubnetArgs
                                    {
                                        IpAddrs = new[]
                                        {
                                            new Avi.Inputs.WafpolicyPreCrsGroupRuleExcludeListClientSubnetIpAddrArgs
                                            {
                                                Addr = "string",
                                                Type = "string",
                                            },
                                        },
                                        Mask = "string",
                                    },
                                },
                                Description = "string",
                                MatchElement = "string",
                                MatchElementCriterias = new[]
                                {
                                    new Avi.Inputs.WafpolicyPreCrsGroupRuleExcludeListMatchElementCriteriaArgs
                                    {
                                        MatchCase = "string",
                                        MatchOp = "string",
                                    },
                                },
                                UriMatchCriterias = new[]
                                {
                                    new Avi.Inputs.WafpolicyPreCrsGroupRuleExcludeListUriMatchCriteriaArgs
                                    {
                                        MatchCase = "string",
                                        MatchOp = "string",
                                    },
                                },
                                UriPath = "string",
                            },
                        },
                        IsSensitive = "string",
                        Mode = "string",
                        Name = "string",
                        ParanoiaLevel = "string",
                        Phase = "string",
                        RuleId = "string",
                        Tags = new[]
                        {
                            "string",
                        },
                    },
                },
            },
        },
        Mode = "string",
        Name = "string",
        ParanoiaLevel = "string",
        Markers = new[]
        {
            new Avi.Inputs.WafpolicyMarkerArgs
            {
                Key = "string",
                Values = new[]
                {
                    "string",
                },
            },
        },
        PostCrsGroups = new[]
        {
            new Avi.Inputs.WafpolicyPostCrsGroupArgs
            {
                Index = "string",
                Name = "string",
                Enable = "string",
                ExcludeLists = new[]
                {
                    new Avi.Inputs.WafpolicyPostCrsGroupExcludeListArgs
                    {
                        ClientSubnets = new[]
                        {
                            new Avi.Inputs.WafpolicyPostCrsGroupExcludeListClientSubnetArgs
                            {
                                IpAddrs = new[]
                                {
                                    new Avi.Inputs.WafpolicyPostCrsGroupExcludeListClientSubnetIpAddrArgs
                                    {
                                        Addr = "string",
                                        Type = "string",
                                    },
                                },
                                Mask = "string",
                            },
                        },
                        Description = "string",
                        MatchElement = "string",
                        MatchElementCriterias = new[]
                        {
                            new Avi.Inputs.WafpolicyPostCrsGroupExcludeListMatchElementCriteriaArgs
                            {
                                MatchCase = "string",
                                MatchOp = "string",
                            },
                        },
                        UriMatchCriterias = new[]
                        {
                            new Avi.Inputs.WafpolicyPostCrsGroupExcludeListUriMatchCriteriaArgs
                            {
                                MatchCase = "string",
                                MatchOp = "string",
                            },
                        },
                        UriPath = "string",
                    },
                },
                Rules = new[]
                {
                    new Avi.Inputs.WafpolicyPostCrsGroupRuleArgs
                    {
                        Index = "string",
                        Rule = "string",
                        Enable = "string",
                        ExcludeLists = new[]
                        {
                            new Avi.Inputs.WafpolicyPostCrsGroupRuleExcludeListArgs
                            {
                                ClientSubnets = new[]
                                {
                                    new Avi.Inputs.WafpolicyPostCrsGroupRuleExcludeListClientSubnetArgs
                                    {
                                        IpAddrs = new[]
                                        {
                                            new Avi.Inputs.WafpolicyPostCrsGroupRuleExcludeListClientSubnetIpAddrArgs
                                            {
                                                Addr = "string",
                                                Type = "string",
                                            },
                                        },
                                        Mask = "string",
                                    },
                                },
                                Description = "string",
                                MatchElement = "string",
                                MatchElementCriterias = new[]
                                {
                                    new Avi.Inputs.WafpolicyPostCrsGroupRuleExcludeListMatchElementCriteriaArgs
                                    {
                                        MatchCase = "string",
                                        MatchOp = "string",
                                    },
                                },
                                UriMatchCriterias = new[]
                                {
                                    new Avi.Inputs.WafpolicyPostCrsGroupRuleExcludeListUriMatchCriteriaArgs
                                    {
                                        MatchCase = "string",
                                        MatchOp = "string",
                                    },
                                },
                                UriPath = "string",
                            },
                        },
                        IsSensitive = "string",
                        Mode = "string",
                        Name = "string",
                        ParanoiaLevel = "string",
                        Phase = "string",
                        RuleId = "string",
                        Tags = new[]
                        {
                            "string",
                        },
                    },
                },
            },
        },
        MinConfidence = "string",
        RequiredDataFiles = new[]
        {
            new Avi.Inputs.WafpolicyRequiredDataFileArgs
            {
                Name = "string",
                Type = "string",
            },
        },
        TenantRef = "string",
        UpdatedCrsRulesInDetectionMode = "string",
        Uuid = "string",
        WafCrsRef = "string",
        Allowlists = new[]
        {
            new Avi.Inputs.WafpolicyAllowlistArgs
            {
                Rules = new[]
                {
                    new Avi.Inputs.WafpolicyAllowlistRuleArgs
                    {
                        Actions = new[]
                        {
                            "string",
                        },
                        Index = "string",
                        Matches = new[]
                        {
                            new Avi.Inputs.WafpolicyAllowlistRuleMatchArgs
                            {
                                BotDetectionResults = new[]
                                {
                                    new Avi.Inputs.WafpolicyAllowlistRuleMatchBotDetectionResultArgs
                                    {
                                        MatchOperation = "string",
                                        Classifications = new[]
                                        {
                                            new Avi.Inputs.WafpolicyAllowlistRuleMatchBotDetectionResultClassificationArgs
                                            {
                                                Type = "string",
                                                UserDefinedType = "string",
                                            },
                                        },
                                    },
                                },
                                ClientIps = new[]
                                {
                                    new Avi.Inputs.WafpolicyAllowlistRuleMatchClientIpArgs
                                    {
                                        MatchCriteria = "string",
                                        Addrs = new[]
                                        {
                                            new Avi.Inputs.WafpolicyAllowlistRuleMatchClientIpAddrArgs
                                            {
                                                Addr = "string",
                                                Type = "string",
                                            },
                                        },
                                        GroupRefs = new[]
                                        {
                                            "string",
                                        },
                                        Prefixes = new[]
                                        {
                                            new Avi.Inputs.WafpolicyAllowlistRuleMatchClientIpPrefixArgs
                                            {
                                                IpAddrs = new[]
                                                {
                                                    new Avi.Inputs.WafpolicyAllowlistRuleMatchClientIpPrefixIpAddrArgs
                                                    {
                                                        Addr = "string",
                                                        Type = "string",
                                                    },
                                                },
                                                Mask = "string",
                                            },
                                        },
                                        Ranges = new[]
                                        {
                                            new Avi.Inputs.WafpolicyAllowlistRuleMatchClientIpRangeArgs
                                            {
                                                Begins = new[]
                                                {
                                                    new Avi.Inputs.WafpolicyAllowlistRuleMatchClientIpRangeBeginArgs
                                                    {
                                                        Addr = "string",
                                                        Type = "string",
                                                    },
                                                },
                                                Ends = new[]
                                                {
                                                    new Avi.Inputs.WafpolicyAllowlistRuleMatchClientIpRangeEndArgs
                                                    {
                                                        Addr = "string",
                                                        Type = "string",
                                                    },
                                                },
                                            },
                                        },
                                    },
                                },
                                Cookies = new[]
                                {
                                    new Avi.Inputs.WafpolicyAllowlistRuleMatchCookieArgs
                                    {
                                        MatchCriteria = "string",
                                        Name = "string",
                                        MatchCase = "string",
                                        Value = "string",
                                    },
                                },
                                GeoMatches = new[]
                                {
                                    new Avi.Inputs.WafpolicyAllowlistRuleMatchGeoMatchArgs
                                    {
                                        Attribute = "string",
                                        MatchOperation = "string",
                                        Values = new[]
                                        {
                                            "string",
                                        },
                                    },
                                },
                                Hdrs = new[]
                                {
                                    new Avi.Inputs.WafpolicyAllowlistRuleMatchHdrArgs
                                    {
                                        Hdr = "string",
                                        MatchCriteria = "string",
                                        MatchCase = "string",
                                        StringGroupRefs = new[]
                                        {
                                            "string",
                                        },
                                        Values = new[]
                                        {
                                            "string",
                                        },
                                    },
                                },
                                HostHdrs = new[]
                                {
                                    new Avi.Inputs.WafpolicyAllowlistRuleMatchHostHdrArgs
                                    {
                                        MatchCriteria = "string",
                                        MatchCase = "string",
                                        Values = new[]
                                        {
                                            "string",
                                        },
                                    },
                                },
                                IpReputationTypes = new[]
                                {
                                    new Avi.Inputs.WafpolicyAllowlistRuleMatchIpReputationTypeArgs
                                    {
                                        MatchOperation = "string",
                                        ReputationTypes = new[]
                                        {
                                            "string",
                                        },
                                    },
                                },
                                Methods = new[]
                                {
                                    new Avi.Inputs.WafpolicyAllowlistRuleMatchMethodArgs
                                    {
                                        MatchCriteria = "string",
                                        Methods = new[]
                                        {
                                            "string",
                                        },
                                    },
                                },
                                Paths = new[]
                                {
                                    new Avi.Inputs.WafpolicyAllowlistRuleMatchPathArgs
                                    {
                                        MatchCriteria = "string",
                                        MatchCase = "string",
                                        MatchDecodedString = "string",
                                        MatchStrs = new[]
                                        {
                                            "string",
                                        },
                                        StringGroupRefs = new[]
                                        {
                                            "string",
                                        },
                                    },
                                },
                                Protocols = new[]
                                {
                                    new Avi.Inputs.WafpolicyAllowlistRuleMatchProtocolArgs
                                    {
                                        MatchCriteria = "string",
                                        Protocols = "string",
                                    },
                                },
                                Queries = new[]
                                {
                                    new Avi.Inputs.WafpolicyAllowlistRuleMatchQueryArgs
                                    {
                                        MatchCriteria = "string",
                                        MatchCase = "string",
                                        MatchDecodedString = "string",
                                        MatchStrs = new[]
                                        {
                                            "string",
                                        },
                                        StringGroupRefs = new[]
                                        {
                                            "string",
                                        },
                                    },
                                },
                                SourceIps = new[]
                                {
                                    new Avi.Inputs.WafpolicyAllowlistRuleMatchSourceIpArgs
                                    {
                                        MatchCriteria = "string",
                                        Addrs = new[]
                                        {
                                            new Avi.Inputs.WafpolicyAllowlistRuleMatchSourceIpAddrArgs
                                            {
                                                Addr = "string",
                                                Type = "string",
                                            },
                                        },
                                        GroupRefs = new[]
                                        {
                                            "string",
                                        },
                                        Prefixes = new[]
                                        {
                                            new Avi.Inputs.WafpolicyAllowlistRuleMatchSourceIpPrefixArgs
                                            {
                                                IpAddrs = new[]
                                                {
                                                    new Avi.Inputs.WafpolicyAllowlistRuleMatchSourceIpPrefixIpAddrArgs
                                                    {
                                                        Addr = "string",
                                                        Type = "string",
                                                    },
                                                },
                                                Mask = "string",
                                            },
                                        },
                                        Ranges = new[]
                                        {
                                            new Avi.Inputs.WafpolicyAllowlistRuleMatchSourceIpRangeArgs
                                            {
                                                Begins = new[]
                                                {
                                                    new Avi.Inputs.WafpolicyAllowlistRuleMatchSourceIpRangeBeginArgs
                                                    {
                                                        Addr = "string",
                                                        Type = "string",
                                                    },
                                                },
                                                Ends = new[]
                                                {
                                                    new Avi.Inputs.WafpolicyAllowlistRuleMatchSourceIpRangeEndArgs
                                                    {
                                                        Addr = "string",
                                                        Type = "string",
                                                    },
                                                },
                                            },
                                        },
                                    },
                                },
                                TlsFingerprintMatches = new[]
                                {
                                    new Avi.Inputs.WafpolicyAllowlistRuleMatchTlsFingerprintMatchArgs
                                    {
                                        MatchOperation = "string",
                                        Fingerprints = new[]
                                        {
                                            "string",
                                        },
                                        StringGroupRefs = new[]
                                        {
                                            "string",
                                        },
                                    },
                                },
                                Versions = new[]
                                {
                                    new Avi.Inputs.WafpolicyAllowlistRuleMatchVersionArgs
                                    {
                                        MatchCriteria = "string",
                                        Versions = new[]
                                        {
                                            "string",
                                        },
                                    },
                                },
                                VsPorts = new[]
                                {
                                    new Avi.Inputs.WafpolicyAllowlistRuleMatchVsPortArgs
                                    {
                                        MatchCriteria = "string",
                                        Ports = new[]
                                        {
                                            0,
                                        },
                                    },
                                },
                            },
                        },
                        Name = "string",
                        Description = "string",
                        Enable = "string",
                        SamplingPercent = "string",
                    },
                },
            },
        },
        WafpolicyId = "string",
    });
    
    example, err := avi.NewWafpolicy(ctx, "wafpolicyResource", &avi.WafpolicyArgs{
    	WafProfileRef: pulumi.String("string"),
    	GeoDbRef:      pulumi.String("string"),
    	PositiveSecurityModels: avi.WafpolicyPositiveSecurityModelArray{
    		&avi.WafpolicyPositiveSecurityModelArgs{
    			GroupRefs: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    		},
    	},
    	AutoUpdateCrs:          pulumi.String("string"),
    	BypassStaticExtensions: pulumi.String("string"),
    	ConfidenceOverrides: avi.WafpolicyConfidenceOverrideArray{
    		&avi.WafpolicyConfidenceOverrideArgs{
    			ConfidHighValue:     pulumi.String("string"),
    			ConfidLowValue:      pulumi.String("string"),
    			ConfidProbableValue: pulumi.String("string"),
    			ConfidVeryHighValue: pulumi.String("string"),
    		},
    	},
    	ConfigpbAttributes: avi.WafpolicyConfigpbAttributeArray{
    		&avi.WafpolicyConfigpbAttributeArgs{
    			Version: pulumi.String("string"),
    		},
    	},
    	CreatedBy: pulumi.String("string"),
    	CrsOverrides: avi.WafpolicyCrsOverrideArray{
    		&avi.WafpolicyCrsOverrideArgs{
    			Name:   pulumi.String("string"),
    			Enable: pulumi.String("string"),
    			ExcludeLists: avi.WafpolicyCrsOverrideExcludeListArray{
    				&avi.WafpolicyCrsOverrideExcludeListArgs{
    					ClientSubnets: avi.WafpolicyCrsOverrideExcludeListClientSubnetArray{
    						&avi.WafpolicyCrsOverrideExcludeListClientSubnetArgs{
    							IpAddrs: avi.WafpolicyCrsOverrideExcludeListClientSubnetIpAddrArray{
    								&avi.WafpolicyCrsOverrideExcludeListClientSubnetIpAddrArgs{
    									Addr: pulumi.String("string"),
    									Type: pulumi.String("string"),
    								},
    							},
    							Mask: pulumi.String("string"),
    						},
    					},
    					Description:  pulumi.String("string"),
    					MatchElement: pulumi.String("string"),
    					MatchElementCriterias: avi.WafpolicyCrsOverrideExcludeListMatchElementCriteriaArray{
    						&avi.WafpolicyCrsOverrideExcludeListMatchElementCriteriaArgs{
    							MatchCase: pulumi.String("string"),
    							MatchOp:   pulumi.String("string"),
    						},
    					},
    					UriMatchCriterias: avi.WafpolicyCrsOverrideExcludeListUriMatchCriteriaArray{
    						&avi.WafpolicyCrsOverrideExcludeListUriMatchCriteriaArgs{
    							MatchCase: pulumi.String("string"),
    							MatchOp:   pulumi.String("string"),
    						},
    					},
    					UriPath: pulumi.String("string"),
    				},
    			},
    			Mode: pulumi.String("string"),
    			RuleOverrides: avi.WafpolicyCrsOverrideRuleOverrideArray{
    				&avi.WafpolicyCrsOverrideRuleOverrideArgs{
    					RuleId: pulumi.String("string"),
    					Enable: pulumi.String("string"),
    					ExcludeLists: avi.WafpolicyCrsOverrideRuleOverrideExcludeListArray{
    						&avi.WafpolicyCrsOverrideRuleOverrideExcludeListArgs{
    							ClientSubnets: avi.WafpolicyCrsOverrideRuleOverrideExcludeListClientSubnetArray{
    								&avi.WafpolicyCrsOverrideRuleOverrideExcludeListClientSubnetArgs{
    									IpAddrs: avi.WafpolicyCrsOverrideRuleOverrideExcludeListClientSubnetIpAddrArray{
    										&avi.WafpolicyCrsOverrideRuleOverrideExcludeListClientSubnetIpAddrArgs{
    											Addr: pulumi.String("string"),
    											Type: pulumi.String("string"),
    										},
    									},
    									Mask: pulumi.String("string"),
    								},
    							},
    							Description:  pulumi.String("string"),
    							MatchElement: pulumi.String("string"),
    							MatchElementCriterias: avi.WafpolicyCrsOverrideRuleOverrideExcludeListMatchElementCriteriaArray{
    								&avi.WafpolicyCrsOverrideRuleOverrideExcludeListMatchElementCriteriaArgs{
    									MatchCase: pulumi.String("string"),
    									MatchOp:   pulumi.String("string"),
    								},
    							},
    							UriMatchCriterias: avi.WafpolicyCrsOverrideRuleOverrideExcludeListUriMatchCriteriaArray{
    								&avi.WafpolicyCrsOverrideRuleOverrideExcludeListUriMatchCriteriaArgs{
    									MatchCase: pulumi.String("string"),
    									MatchOp:   pulumi.String("string"),
    								},
    							},
    							UriPath: pulumi.String("string"),
    						},
    					},
    					Mode: pulumi.String("string"),
    				},
    			},
    		},
    	},
    	Description:           pulumi.String("string"),
    	EnableAppLearning:     pulumi.String("string"),
    	EnableAutoRuleUpdates: pulumi.String("string"),
    	EnableRegexLearning:   pulumi.String("string"),
    	FailureMode:           pulumi.String("string"),
    	AllowModeDelegation:   pulumi.String("string"),
    	ApplicationSignatures: avi.WafpolicyApplicationSignatureArray{
    		&avi.WafpolicyApplicationSignatureArgs{
    			ProviderRef: pulumi.String("string"),
    			ResolvedRules: avi.WafpolicyApplicationSignatureResolvedRuleArray{
    				&avi.WafpolicyApplicationSignatureResolvedRuleArgs{
    					Index:  pulumi.String("string"),
    					Rule:   pulumi.String("string"),
    					Enable: pulumi.String("string"),
    					ExcludeLists: avi.WafpolicyApplicationSignatureResolvedRuleExcludeListArray{
    						&avi.WafpolicyApplicationSignatureResolvedRuleExcludeListArgs{
    							ClientSubnets: avi.WafpolicyApplicationSignatureResolvedRuleExcludeListClientSubnetArray{
    								&avi.WafpolicyApplicationSignatureResolvedRuleExcludeListClientSubnetArgs{
    									IpAddrs: avi.WafpolicyApplicationSignatureResolvedRuleExcludeListClientSubnetIpAddrArray{
    										&avi.WafpolicyApplicationSignatureResolvedRuleExcludeListClientSubnetIpAddrArgs{
    											Addr: pulumi.String("string"),
    											Type: pulumi.String("string"),
    										},
    									},
    									Mask: pulumi.String("string"),
    								},
    							},
    							Description:  pulumi.String("string"),
    							MatchElement: pulumi.String("string"),
    							MatchElementCriterias: avi.WafpolicyApplicationSignatureResolvedRuleExcludeListMatchElementCriteriaArray{
    								&avi.WafpolicyApplicationSignatureResolvedRuleExcludeListMatchElementCriteriaArgs{
    									MatchCase: pulumi.String("string"),
    									MatchOp:   pulumi.String("string"),
    								},
    							},
    							UriMatchCriterias: avi.WafpolicyApplicationSignatureResolvedRuleExcludeListUriMatchCriteriaArray{
    								&avi.WafpolicyApplicationSignatureResolvedRuleExcludeListUriMatchCriteriaArgs{
    									MatchCase: pulumi.String("string"),
    									MatchOp:   pulumi.String("string"),
    								},
    							},
    							UriPath: pulumi.String("string"),
    						},
    					},
    					IsSensitive:   pulumi.String("string"),
    					Mode:          pulumi.String("string"),
    					Name:          pulumi.String("string"),
    					ParanoiaLevel: pulumi.String("string"),
    					Phase:         pulumi.String("string"),
    					RuleId:        pulumi.String("string"),
    					Tags: pulumi.StringArray{
    						pulumi.String("string"),
    					},
    				},
    			},
    			RuleOverrides: avi.WafpolicyApplicationSignatureRuleOverrideArray{
    				&avi.WafpolicyApplicationSignatureRuleOverrideArgs{
    					RuleId: pulumi.String("string"),
    					Enable: pulumi.String("string"),
    					ExcludeLists: avi.WafpolicyApplicationSignatureRuleOverrideExcludeListArray{
    						&avi.WafpolicyApplicationSignatureRuleOverrideExcludeListArgs{
    							ClientSubnets: avi.WafpolicyApplicationSignatureRuleOverrideExcludeListClientSubnetArray{
    								&avi.WafpolicyApplicationSignatureRuleOverrideExcludeListClientSubnetArgs{
    									IpAddrs: avi.WafpolicyApplicationSignatureRuleOverrideExcludeListClientSubnetIpAddrArray{
    										&avi.WafpolicyApplicationSignatureRuleOverrideExcludeListClientSubnetIpAddrArgs{
    											Addr: pulumi.String("string"),
    											Type: pulumi.String("string"),
    										},
    									},
    									Mask: pulumi.String("string"),
    								},
    							},
    							Description:  pulumi.String("string"),
    							MatchElement: pulumi.String("string"),
    							MatchElementCriterias: avi.WafpolicyApplicationSignatureRuleOverrideExcludeListMatchElementCriteriaArray{
    								&avi.WafpolicyApplicationSignatureRuleOverrideExcludeListMatchElementCriteriaArgs{
    									MatchCase: pulumi.String("string"),
    									MatchOp:   pulumi.String("string"),
    								},
    							},
    							UriMatchCriterias: avi.WafpolicyApplicationSignatureRuleOverrideExcludeListUriMatchCriteriaArray{
    								&avi.WafpolicyApplicationSignatureRuleOverrideExcludeListUriMatchCriteriaArgs{
    									MatchCase: pulumi.String("string"),
    									MatchOp:   pulumi.String("string"),
    								},
    							},
    							UriPath: pulumi.String("string"),
    						},
    					},
    					Mode: pulumi.String("string"),
    				},
    			},
    			RulesetVersion: pulumi.String("string"),
    			SelectedApplications: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    		},
    	},
    	LearningParams: avi.WafpolicyLearningParamArray{
    		&avi.WafpolicyLearningParamArgs{
    			EnableLearnFromBots:               pulumi.String("string"),
    			EnablePerUriLearning:              pulumi.String("string"),
    			LearnFromAuthenticatedClientsOnly: pulumi.String("string"),
    			LearnFromBots: avi.WafpolicyLearningParamLearnFromBotArray{
    				&avi.WafpolicyLearningParamLearnFromBotArgs{
    					MatchOperation: pulumi.String("string"),
    					Classifications: avi.WafpolicyLearningParamLearnFromBotClassificationArray{
    						&avi.WafpolicyLearningParamLearnFromBotClassificationArgs{
    							Type:            pulumi.String("string"),
    							UserDefinedType: pulumi.String("string"),
    						},
    					},
    				},
    			},
    			MaxParams:         pulumi.String("string"),
    			MaxUris:           pulumi.String("string"),
    			MinHitsToLearn:    pulumi.String("string"),
    			SamplingPercent:   pulumi.String("string"),
    			TrustedIpgroupRef: pulumi.String("string"),
    			UpdateInterval:    pulumi.String("string"),
    		},
    	},
    	PreCrsGroups: avi.WafpolicyPreCrsGroupArray{
    		&avi.WafpolicyPreCrsGroupArgs{
    			Index:  pulumi.String("string"),
    			Name:   pulumi.String("string"),
    			Enable: pulumi.String("string"),
    			ExcludeLists: avi.WafpolicyPreCrsGroupExcludeListArray{
    				&avi.WafpolicyPreCrsGroupExcludeListArgs{
    					ClientSubnets: avi.WafpolicyPreCrsGroupExcludeListClientSubnetArray{
    						&avi.WafpolicyPreCrsGroupExcludeListClientSubnetArgs{
    							IpAddrs: avi.WafpolicyPreCrsGroupExcludeListClientSubnetIpAddrArray{
    								&avi.WafpolicyPreCrsGroupExcludeListClientSubnetIpAddrArgs{
    									Addr: pulumi.String("string"),
    									Type: pulumi.String("string"),
    								},
    							},
    							Mask: pulumi.String("string"),
    						},
    					},
    					Description:  pulumi.String("string"),
    					MatchElement: pulumi.String("string"),
    					MatchElementCriterias: avi.WafpolicyPreCrsGroupExcludeListMatchElementCriteriaArray{
    						&avi.WafpolicyPreCrsGroupExcludeListMatchElementCriteriaArgs{
    							MatchCase: pulumi.String("string"),
    							MatchOp:   pulumi.String("string"),
    						},
    					},
    					UriMatchCriterias: avi.WafpolicyPreCrsGroupExcludeListUriMatchCriteriaArray{
    						&avi.WafpolicyPreCrsGroupExcludeListUriMatchCriteriaArgs{
    							MatchCase: pulumi.String("string"),
    							MatchOp:   pulumi.String("string"),
    						},
    					},
    					UriPath: pulumi.String("string"),
    				},
    			},
    			Rules: avi.WafpolicyPreCrsGroupRuleArray{
    				&avi.WafpolicyPreCrsGroupRuleArgs{
    					Index:  pulumi.String("string"),
    					Rule:   pulumi.String("string"),
    					Enable: pulumi.String("string"),
    					ExcludeLists: avi.WafpolicyPreCrsGroupRuleExcludeListArray{
    						&avi.WafpolicyPreCrsGroupRuleExcludeListArgs{
    							ClientSubnets: avi.WafpolicyPreCrsGroupRuleExcludeListClientSubnetArray{
    								&avi.WafpolicyPreCrsGroupRuleExcludeListClientSubnetArgs{
    									IpAddrs: avi.WafpolicyPreCrsGroupRuleExcludeListClientSubnetIpAddrArray{
    										&avi.WafpolicyPreCrsGroupRuleExcludeListClientSubnetIpAddrArgs{
    											Addr: pulumi.String("string"),
    											Type: pulumi.String("string"),
    										},
    									},
    									Mask: pulumi.String("string"),
    								},
    							},
    							Description:  pulumi.String("string"),
    							MatchElement: pulumi.String("string"),
    							MatchElementCriterias: avi.WafpolicyPreCrsGroupRuleExcludeListMatchElementCriteriaArray{
    								&avi.WafpolicyPreCrsGroupRuleExcludeListMatchElementCriteriaArgs{
    									MatchCase: pulumi.String("string"),
    									MatchOp:   pulumi.String("string"),
    								},
    							},
    							UriMatchCriterias: avi.WafpolicyPreCrsGroupRuleExcludeListUriMatchCriteriaArray{
    								&avi.WafpolicyPreCrsGroupRuleExcludeListUriMatchCriteriaArgs{
    									MatchCase: pulumi.String("string"),
    									MatchOp:   pulumi.String("string"),
    								},
    							},
    							UriPath: pulumi.String("string"),
    						},
    					},
    					IsSensitive:   pulumi.String("string"),
    					Mode:          pulumi.String("string"),
    					Name:          pulumi.String("string"),
    					ParanoiaLevel: pulumi.String("string"),
    					Phase:         pulumi.String("string"),
    					RuleId:        pulumi.String("string"),
    					Tags: pulumi.StringArray{
    						pulumi.String("string"),
    					},
    				},
    			},
    		},
    	},
    	Mode:          pulumi.String("string"),
    	Name:          pulumi.String("string"),
    	ParanoiaLevel: pulumi.String("string"),
    	Markers: avi.WafpolicyMarkerArray{
    		&avi.WafpolicyMarkerArgs{
    			Key: pulumi.String("string"),
    			Values: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    		},
    	},
    	PostCrsGroups: avi.WafpolicyPostCrsGroupArray{
    		&avi.WafpolicyPostCrsGroupArgs{
    			Index:  pulumi.String("string"),
    			Name:   pulumi.String("string"),
    			Enable: pulumi.String("string"),
    			ExcludeLists: avi.WafpolicyPostCrsGroupExcludeListArray{
    				&avi.WafpolicyPostCrsGroupExcludeListArgs{
    					ClientSubnets: avi.WafpolicyPostCrsGroupExcludeListClientSubnetArray{
    						&avi.WafpolicyPostCrsGroupExcludeListClientSubnetArgs{
    							IpAddrs: avi.WafpolicyPostCrsGroupExcludeListClientSubnetIpAddrArray{
    								&avi.WafpolicyPostCrsGroupExcludeListClientSubnetIpAddrArgs{
    									Addr: pulumi.String("string"),
    									Type: pulumi.String("string"),
    								},
    							},
    							Mask: pulumi.String("string"),
    						},
    					},
    					Description:  pulumi.String("string"),
    					MatchElement: pulumi.String("string"),
    					MatchElementCriterias: avi.WafpolicyPostCrsGroupExcludeListMatchElementCriteriaArray{
    						&avi.WafpolicyPostCrsGroupExcludeListMatchElementCriteriaArgs{
    							MatchCase: pulumi.String("string"),
    							MatchOp:   pulumi.String("string"),
    						},
    					},
    					UriMatchCriterias: avi.WafpolicyPostCrsGroupExcludeListUriMatchCriteriaArray{
    						&avi.WafpolicyPostCrsGroupExcludeListUriMatchCriteriaArgs{
    							MatchCase: pulumi.String("string"),
    							MatchOp:   pulumi.String("string"),
    						},
    					},
    					UriPath: pulumi.String("string"),
    				},
    			},
    			Rules: avi.WafpolicyPostCrsGroupRuleArray{
    				&avi.WafpolicyPostCrsGroupRuleArgs{
    					Index:  pulumi.String("string"),
    					Rule:   pulumi.String("string"),
    					Enable: pulumi.String("string"),
    					ExcludeLists: avi.WafpolicyPostCrsGroupRuleExcludeListArray{
    						&avi.WafpolicyPostCrsGroupRuleExcludeListArgs{
    							ClientSubnets: avi.WafpolicyPostCrsGroupRuleExcludeListClientSubnetArray{
    								&avi.WafpolicyPostCrsGroupRuleExcludeListClientSubnetArgs{
    									IpAddrs: avi.WafpolicyPostCrsGroupRuleExcludeListClientSubnetIpAddrArray{
    										&avi.WafpolicyPostCrsGroupRuleExcludeListClientSubnetIpAddrArgs{
    											Addr: pulumi.String("string"),
    											Type: pulumi.String("string"),
    										},
    									},
    									Mask: pulumi.String("string"),
    								},
    							},
    							Description:  pulumi.String("string"),
    							MatchElement: pulumi.String("string"),
    							MatchElementCriterias: avi.WafpolicyPostCrsGroupRuleExcludeListMatchElementCriteriaArray{
    								&avi.WafpolicyPostCrsGroupRuleExcludeListMatchElementCriteriaArgs{
    									MatchCase: pulumi.String("string"),
    									MatchOp:   pulumi.String("string"),
    								},
    							},
    							UriMatchCriterias: avi.WafpolicyPostCrsGroupRuleExcludeListUriMatchCriteriaArray{
    								&avi.WafpolicyPostCrsGroupRuleExcludeListUriMatchCriteriaArgs{
    									MatchCase: pulumi.String("string"),
    									MatchOp:   pulumi.String("string"),
    								},
    							},
    							UriPath: pulumi.String("string"),
    						},
    					},
    					IsSensitive:   pulumi.String("string"),
    					Mode:          pulumi.String("string"),
    					Name:          pulumi.String("string"),
    					ParanoiaLevel: pulumi.String("string"),
    					Phase:         pulumi.String("string"),
    					RuleId:        pulumi.String("string"),
    					Tags: pulumi.StringArray{
    						pulumi.String("string"),
    					},
    				},
    			},
    		},
    	},
    	MinConfidence: pulumi.String("string"),
    	RequiredDataFiles: avi.WafpolicyRequiredDataFileArray{
    		&avi.WafpolicyRequiredDataFileArgs{
    			Name: pulumi.String("string"),
    			Type: pulumi.String("string"),
    		},
    	},
    	TenantRef:                      pulumi.String("string"),
    	UpdatedCrsRulesInDetectionMode: pulumi.String("string"),
    	Uuid:                           pulumi.String("string"),
    	WafCrsRef:                      pulumi.String("string"),
    	Allowlists: avi.WafpolicyAllowlistArray{
    		&avi.WafpolicyAllowlistArgs{
    			Rules: avi.WafpolicyAllowlistRuleArray{
    				&avi.WafpolicyAllowlistRuleArgs{
    					Actions: pulumi.StringArray{
    						pulumi.String("string"),
    					},
    					Index: pulumi.String("string"),
    					Matches: avi.WafpolicyAllowlistRuleMatchArray{
    						&avi.WafpolicyAllowlistRuleMatchArgs{
    							BotDetectionResults: avi.WafpolicyAllowlistRuleMatchBotDetectionResultArray{
    								&avi.WafpolicyAllowlistRuleMatchBotDetectionResultArgs{
    									MatchOperation: pulumi.String("string"),
    									Classifications: avi.WafpolicyAllowlistRuleMatchBotDetectionResultClassificationArray{
    										&avi.WafpolicyAllowlistRuleMatchBotDetectionResultClassificationArgs{
    											Type:            pulumi.String("string"),
    											UserDefinedType: pulumi.String("string"),
    										},
    									},
    								},
    							},
    							ClientIps: avi.WafpolicyAllowlistRuleMatchClientIpArray{
    								&avi.WafpolicyAllowlistRuleMatchClientIpArgs{
    									MatchCriteria: pulumi.String("string"),
    									Addrs: avi.WafpolicyAllowlistRuleMatchClientIpAddrArray{
    										&avi.WafpolicyAllowlistRuleMatchClientIpAddrArgs{
    											Addr: pulumi.String("string"),
    											Type: pulumi.String("string"),
    										},
    									},
    									GroupRefs: pulumi.StringArray{
    										pulumi.String("string"),
    									},
    									Prefixes: avi.WafpolicyAllowlistRuleMatchClientIpPrefixArray{
    										&avi.WafpolicyAllowlistRuleMatchClientIpPrefixArgs{
    											IpAddrs: avi.WafpolicyAllowlistRuleMatchClientIpPrefixIpAddrArray{
    												&avi.WafpolicyAllowlistRuleMatchClientIpPrefixIpAddrArgs{
    													Addr: pulumi.String("string"),
    													Type: pulumi.String("string"),
    												},
    											},
    											Mask: pulumi.String("string"),
    										},
    									},
    									Ranges: avi.WafpolicyAllowlistRuleMatchClientIpRangeArray{
    										&avi.WafpolicyAllowlistRuleMatchClientIpRangeArgs{
    											Begins: avi.WafpolicyAllowlistRuleMatchClientIpRangeBeginArray{
    												&avi.WafpolicyAllowlistRuleMatchClientIpRangeBeginArgs{
    													Addr: pulumi.String("string"),
    													Type: pulumi.String("string"),
    												},
    											},
    											Ends: avi.WafpolicyAllowlistRuleMatchClientIpRangeEndArray{
    												&avi.WafpolicyAllowlistRuleMatchClientIpRangeEndArgs{
    													Addr: pulumi.String("string"),
    													Type: pulumi.String("string"),
    												},
    											},
    										},
    									},
    								},
    							},
    							Cookies: avi.WafpolicyAllowlistRuleMatchCookieArray{
    								&avi.WafpolicyAllowlistRuleMatchCookieArgs{
    									MatchCriteria: pulumi.String("string"),
    									Name:          pulumi.String("string"),
    									MatchCase:     pulumi.String("string"),
    									Value:         pulumi.String("string"),
    								},
    							},
    							GeoMatches: avi.WafpolicyAllowlistRuleMatchGeoMatchArray{
    								&avi.WafpolicyAllowlistRuleMatchGeoMatchArgs{
    									Attribute:      pulumi.String("string"),
    									MatchOperation: pulumi.String("string"),
    									Values: pulumi.StringArray{
    										pulumi.String("string"),
    									},
    								},
    							},
    							Hdrs: avi.WafpolicyAllowlistRuleMatchHdrArray{
    								&avi.WafpolicyAllowlistRuleMatchHdrArgs{
    									Hdr:           pulumi.String("string"),
    									MatchCriteria: pulumi.String("string"),
    									MatchCase:     pulumi.String("string"),
    									StringGroupRefs: pulumi.StringArray{
    										pulumi.String("string"),
    									},
    									Values: pulumi.StringArray{
    										pulumi.String("string"),
    									},
    								},
    							},
    							HostHdrs: avi.WafpolicyAllowlistRuleMatchHostHdrArray{
    								&avi.WafpolicyAllowlistRuleMatchHostHdrArgs{
    									MatchCriteria: pulumi.String("string"),
    									MatchCase:     pulumi.String("string"),
    									Values: pulumi.StringArray{
    										pulumi.String("string"),
    									},
    								},
    							},
    							IpReputationTypes: avi.WafpolicyAllowlistRuleMatchIpReputationTypeArray{
    								&avi.WafpolicyAllowlistRuleMatchIpReputationTypeArgs{
    									MatchOperation: pulumi.String("string"),
    									ReputationTypes: pulumi.StringArray{
    										pulumi.String("string"),
    									},
    								},
    							},
    							Methods: avi.WafpolicyAllowlistRuleMatchMethodArray{
    								&avi.WafpolicyAllowlistRuleMatchMethodArgs{
    									MatchCriteria: pulumi.String("string"),
    									Methods: pulumi.StringArray{
    										pulumi.String("string"),
    									},
    								},
    							},
    							Paths: avi.WafpolicyAllowlistRuleMatchPathArray{
    								&avi.WafpolicyAllowlistRuleMatchPathArgs{
    									MatchCriteria:      pulumi.String("string"),
    									MatchCase:          pulumi.String("string"),
    									MatchDecodedString: pulumi.String("string"),
    									MatchStrs: pulumi.StringArray{
    										pulumi.String("string"),
    									},
    									StringGroupRefs: pulumi.StringArray{
    										pulumi.String("string"),
    									},
    								},
    							},
    							Protocols: avi.WafpolicyAllowlistRuleMatchProtocolArray{
    								&avi.WafpolicyAllowlistRuleMatchProtocolArgs{
    									MatchCriteria: pulumi.String("string"),
    									Protocols:     pulumi.String("string"),
    								},
    							},
    							Queries: avi.WafpolicyAllowlistRuleMatchQueryArray{
    								&avi.WafpolicyAllowlistRuleMatchQueryArgs{
    									MatchCriteria:      pulumi.String("string"),
    									MatchCase:          pulumi.String("string"),
    									MatchDecodedString: pulumi.String("string"),
    									MatchStrs: pulumi.StringArray{
    										pulumi.String("string"),
    									},
    									StringGroupRefs: pulumi.StringArray{
    										pulumi.String("string"),
    									},
    								},
    							},
    							SourceIps: avi.WafpolicyAllowlistRuleMatchSourceIpArray{
    								&avi.WafpolicyAllowlistRuleMatchSourceIpArgs{
    									MatchCriteria: pulumi.String("string"),
    									Addrs: avi.WafpolicyAllowlistRuleMatchSourceIpAddrArray{
    										&avi.WafpolicyAllowlistRuleMatchSourceIpAddrArgs{
    											Addr: pulumi.String("string"),
    											Type: pulumi.String("string"),
    										},
    									},
    									GroupRefs: pulumi.StringArray{
    										pulumi.String("string"),
    									},
    									Prefixes: avi.WafpolicyAllowlistRuleMatchSourceIpPrefixArray{
    										&avi.WafpolicyAllowlistRuleMatchSourceIpPrefixArgs{
    											IpAddrs: avi.WafpolicyAllowlistRuleMatchSourceIpPrefixIpAddrArray{
    												&avi.WafpolicyAllowlistRuleMatchSourceIpPrefixIpAddrArgs{
    													Addr: pulumi.String("string"),
    													Type: pulumi.String("string"),
    												},
    											},
    											Mask: pulumi.String("string"),
    										},
    									},
    									Ranges: avi.WafpolicyAllowlistRuleMatchSourceIpRangeArray{
    										&avi.WafpolicyAllowlistRuleMatchSourceIpRangeArgs{
    											Begins: avi.WafpolicyAllowlistRuleMatchSourceIpRangeBeginArray{
    												&avi.WafpolicyAllowlistRuleMatchSourceIpRangeBeginArgs{
    													Addr: pulumi.String("string"),
    													Type: pulumi.String("string"),
    												},
    											},
    											Ends: avi.WafpolicyAllowlistRuleMatchSourceIpRangeEndArray{
    												&avi.WafpolicyAllowlistRuleMatchSourceIpRangeEndArgs{
    													Addr: pulumi.String("string"),
    													Type: pulumi.String("string"),
    												},
    											},
    										},
    									},
    								},
    							},
    							TlsFingerprintMatches: avi.WafpolicyAllowlistRuleMatchTlsFingerprintMatchArray{
    								&avi.WafpolicyAllowlistRuleMatchTlsFingerprintMatchArgs{
    									MatchOperation: pulumi.String("string"),
    									Fingerprints: pulumi.StringArray{
    										pulumi.String("string"),
    									},
    									StringGroupRefs: pulumi.StringArray{
    										pulumi.String("string"),
    									},
    								},
    							},
    							Versions: avi.WafpolicyAllowlistRuleMatchVersionArray{
    								&avi.WafpolicyAllowlistRuleMatchVersionArgs{
    									MatchCriteria: pulumi.String("string"),
    									Versions: pulumi.StringArray{
    										pulumi.String("string"),
    									},
    								},
    							},
    							VsPorts: avi.WafpolicyAllowlistRuleMatchVsPortArray{
    								&avi.WafpolicyAllowlistRuleMatchVsPortArgs{
    									MatchCriteria: pulumi.String("string"),
    									Ports: pulumi.Float64Array{
    										pulumi.Float64(0),
    									},
    								},
    							},
    						},
    					},
    					Name:            pulumi.String("string"),
    					Description:     pulumi.String("string"),
    					Enable:          pulumi.String("string"),
    					SamplingPercent: pulumi.String("string"),
    				},
    			},
    		},
    	},
    	WafpolicyId: pulumi.String("string"),
    })
    
    var wafpolicyResource = new Wafpolicy("wafpolicyResource", WafpolicyArgs.builder()
        .wafProfileRef("string")
        .geoDbRef("string")
        .positiveSecurityModels(WafpolicyPositiveSecurityModelArgs.builder()
            .groupRefs("string")
            .build())
        .autoUpdateCrs("string")
        .bypassStaticExtensions("string")
        .confidenceOverrides(WafpolicyConfidenceOverrideArgs.builder()
            .confidHighValue("string")
            .confidLowValue("string")
            .confidProbableValue("string")
            .confidVeryHighValue("string")
            .build())
        .configpbAttributes(WafpolicyConfigpbAttributeArgs.builder()
            .version("string")
            .build())
        .createdBy("string")
        .crsOverrides(WafpolicyCrsOverrideArgs.builder()
            .name("string")
            .enable("string")
            .excludeLists(WafpolicyCrsOverrideExcludeListArgs.builder()
                .clientSubnets(WafpolicyCrsOverrideExcludeListClientSubnetArgs.builder()
                    .ipAddrs(WafpolicyCrsOverrideExcludeListClientSubnetIpAddrArgs.builder()
                        .addr("string")
                        .type("string")
                        .build())
                    .mask("string")
                    .build())
                .description("string")
                .matchElement("string")
                .matchElementCriterias(WafpolicyCrsOverrideExcludeListMatchElementCriteriaArgs.builder()
                    .matchCase("string")
                    .matchOp("string")
                    .build())
                .uriMatchCriterias(WafpolicyCrsOverrideExcludeListUriMatchCriteriaArgs.builder()
                    .matchCase("string")
                    .matchOp("string")
                    .build())
                .uriPath("string")
                .build())
            .mode("string")
            .ruleOverrides(WafpolicyCrsOverrideRuleOverrideArgs.builder()
                .ruleId("string")
                .enable("string")
                .excludeLists(WafpolicyCrsOverrideRuleOverrideExcludeListArgs.builder()
                    .clientSubnets(WafpolicyCrsOverrideRuleOverrideExcludeListClientSubnetArgs.builder()
                        .ipAddrs(WafpolicyCrsOverrideRuleOverrideExcludeListClientSubnetIpAddrArgs.builder()
                            .addr("string")
                            .type("string")
                            .build())
                        .mask("string")
                        .build())
                    .description("string")
                    .matchElement("string")
                    .matchElementCriterias(WafpolicyCrsOverrideRuleOverrideExcludeListMatchElementCriteriaArgs.builder()
                        .matchCase("string")
                        .matchOp("string")
                        .build())
                    .uriMatchCriterias(WafpolicyCrsOverrideRuleOverrideExcludeListUriMatchCriteriaArgs.builder()
                        .matchCase("string")
                        .matchOp("string")
                        .build())
                    .uriPath("string")
                    .build())
                .mode("string")
                .build())
            .build())
        .description("string")
        .enableAppLearning("string")
        .enableAutoRuleUpdates("string")
        .enableRegexLearning("string")
        .failureMode("string")
        .allowModeDelegation("string")
        .applicationSignatures(WafpolicyApplicationSignatureArgs.builder()
            .providerRef("string")
            .resolvedRules(WafpolicyApplicationSignatureResolvedRuleArgs.builder()
                .index("string")
                .rule("string")
                .enable("string")
                .excludeLists(WafpolicyApplicationSignatureResolvedRuleExcludeListArgs.builder()
                    .clientSubnets(WafpolicyApplicationSignatureResolvedRuleExcludeListClientSubnetArgs.builder()
                        .ipAddrs(WafpolicyApplicationSignatureResolvedRuleExcludeListClientSubnetIpAddrArgs.builder()
                            .addr("string")
                            .type("string")
                            .build())
                        .mask("string")
                        .build())
                    .description("string")
                    .matchElement("string")
                    .matchElementCriterias(WafpolicyApplicationSignatureResolvedRuleExcludeListMatchElementCriteriaArgs.builder()
                        .matchCase("string")
                        .matchOp("string")
                        .build())
                    .uriMatchCriterias(WafpolicyApplicationSignatureResolvedRuleExcludeListUriMatchCriteriaArgs.builder()
                        .matchCase("string")
                        .matchOp("string")
                        .build())
                    .uriPath("string")
                    .build())
                .isSensitive("string")
                .mode("string")
                .name("string")
                .paranoiaLevel("string")
                .phase("string")
                .ruleId("string")
                .tags("string")
                .build())
            .ruleOverrides(WafpolicyApplicationSignatureRuleOverrideArgs.builder()
                .ruleId("string")
                .enable("string")
                .excludeLists(WafpolicyApplicationSignatureRuleOverrideExcludeListArgs.builder()
                    .clientSubnets(WafpolicyApplicationSignatureRuleOverrideExcludeListClientSubnetArgs.builder()
                        .ipAddrs(WafpolicyApplicationSignatureRuleOverrideExcludeListClientSubnetIpAddrArgs.builder()
                            .addr("string")
                            .type("string")
                            .build())
                        .mask("string")
                        .build())
                    .description("string")
                    .matchElement("string")
                    .matchElementCriterias(WafpolicyApplicationSignatureRuleOverrideExcludeListMatchElementCriteriaArgs.builder()
                        .matchCase("string")
                        .matchOp("string")
                        .build())
                    .uriMatchCriterias(WafpolicyApplicationSignatureRuleOverrideExcludeListUriMatchCriteriaArgs.builder()
                        .matchCase("string")
                        .matchOp("string")
                        .build())
                    .uriPath("string")
                    .build())
                .mode("string")
                .build())
            .rulesetVersion("string")
            .selectedApplications("string")
            .build())
        .learningParams(WafpolicyLearningParamArgs.builder()
            .enableLearnFromBots("string")
            .enablePerUriLearning("string")
            .learnFromAuthenticatedClientsOnly("string")
            .learnFromBots(WafpolicyLearningParamLearnFromBotArgs.builder()
                .matchOperation("string")
                .classifications(WafpolicyLearningParamLearnFromBotClassificationArgs.builder()
                    .type("string")
                    .userDefinedType("string")
                    .build())
                .build())
            .maxParams("string")
            .maxUris("string")
            .minHitsToLearn("string")
            .samplingPercent("string")
            .trustedIpgroupRef("string")
            .updateInterval("string")
            .build())
        .preCrsGroups(WafpolicyPreCrsGroupArgs.builder()
            .index("string")
            .name("string")
            .enable("string")
            .excludeLists(WafpolicyPreCrsGroupExcludeListArgs.builder()
                .clientSubnets(WafpolicyPreCrsGroupExcludeListClientSubnetArgs.builder()
                    .ipAddrs(WafpolicyPreCrsGroupExcludeListClientSubnetIpAddrArgs.builder()
                        .addr("string")
                        .type("string")
                        .build())
                    .mask("string")
                    .build())
                .description("string")
                .matchElement("string")
                .matchElementCriterias(WafpolicyPreCrsGroupExcludeListMatchElementCriteriaArgs.builder()
                    .matchCase("string")
                    .matchOp("string")
                    .build())
                .uriMatchCriterias(WafpolicyPreCrsGroupExcludeListUriMatchCriteriaArgs.builder()
                    .matchCase("string")
                    .matchOp("string")
                    .build())
                .uriPath("string")
                .build())
            .rules(WafpolicyPreCrsGroupRuleArgs.builder()
                .index("string")
                .rule("string")
                .enable("string")
                .excludeLists(WafpolicyPreCrsGroupRuleExcludeListArgs.builder()
                    .clientSubnets(WafpolicyPreCrsGroupRuleExcludeListClientSubnetArgs.builder()
                        .ipAddrs(WafpolicyPreCrsGroupRuleExcludeListClientSubnetIpAddrArgs.builder()
                            .addr("string")
                            .type("string")
                            .build())
                        .mask("string")
                        .build())
                    .description("string")
                    .matchElement("string")
                    .matchElementCriterias(WafpolicyPreCrsGroupRuleExcludeListMatchElementCriteriaArgs.builder()
                        .matchCase("string")
                        .matchOp("string")
                        .build())
                    .uriMatchCriterias(WafpolicyPreCrsGroupRuleExcludeListUriMatchCriteriaArgs.builder()
                        .matchCase("string")
                        .matchOp("string")
                        .build())
                    .uriPath("string")
                    .build())
                .isSensitive("string")
                .mode("string")
                .name("string")
                .paranoiaLevel("string")
                .phase("string")
                .ruleId("string")
                .tags("string")
                .build())
            .build())
        .mode("string")
        .name("string")
        .paranoiaLevel("string")
        .markers(WafpolicyMarkerArgs.builder()
            .key("string")
            .values("string")
            .build())
        .postCrsGroups(WafpolicyPostCrsGroupArgs.builder()
            .index("string")
            .name("string")
            .enable("string")
            .excludeLists(WafpolicyPostCrsGroupExcludeListArgs.builder()
                .clientSubnets(WafpolicyPostCrsGroupExcludeListClientSubnetArgs.builder()
                    .ipAddrs(WafpolicyPostCrsGroupExcludeListClientSubnetIpAddrArgs.builder()
                        .addr("string")
                        .type("string")
                        .build())
                    .mask("string")
                    .build())
                .description("string")
                .matchElement("string")
                .matchElementCriterias(WafpolicyPostCrsGroupExcludeListMatchElementCriteriaArgs.builder()
                    .matchCase("string")
                    .matchOp("string")
                    .build())
                .uriMatchCriterias(WafpolicyPostCrsGroupExcludeListUriMatchCriteriaArgs.builder()
                    .matchCase("string")
                    .matchOp("string")
                    .build())
                .uriPath("string")
                .build())
            .rules(WafpolicyPostCrsGroupRuleArgs.builder()
                .index("string")
                .rule("string")
                .enable("string")
                .excludeLists(WafpolicyPostCrsGroupRuleExcludeListArgs.builder()
                    .clientSubnets(WafpolicyPostCrsGroupRuleExcludeListClientSubnetArgs.builder()
                        .ipAddrs(WafpolicyPostCrsGroupRuleExcludeListClientSubnetIpAddrArgs.builder()
                            .addr("string")
                            .type("string")
                            .build())
                        .mask("string")
                        .build())
                    .description("string")
                    .matchElement("string")
                    .matchElementCriterias(WafpolicyPostCrsGroupRuleExcludeListMatchElementCriteriaArgs.builder()
                        .matchCase("string")
                        .matchOp("string")
                        .build())
                    .uriMatchCriterias(WafpolicyPostCrsGroupRuleExcludeListUriMatchCriteriaArgs.builder()
                        .matchCase("string")
                        .matchOp("string")
                        .build())
                    .uriPath("string")
                    .build())
                .isSensitive("string")
                .mode("string")
                .name("string")
                .paranoiaLevel("string")
                .phase("string")
                .ruleId("string")
                .tags("string")
                .build())
            .build())
        .minConfidence("string")
        .requiredDataFiles(WafpolicyRequiredDataFileArgs.builder()
            .name("string")
            .type("string")
            .build())
        .tenantRef("string")
        .updatedCrsRulesInDetectionMode("string")
        .uuid("string")
        .wafCrsRef("string")
        .allowlists(WafpolicyAllowlistArgs.builder()
            .rules(WafpolicyAllowlistRuleArgs.builder()
                .actions("string")
                .index("string")
                .matches(WafpolicyAllowlistRuleMatchArgs.builder()
                    .botDetectionResults(WafpolicyAllowlistRuleMatchBotDetectionResultArgs.builder()
                        .matchOperation("string")
                        .classifications(WafpolicyAllowlistRuleMatchBotDetectionResultClassificationArgs.builder()
                            .type("string")
                            .userDefinedType("string")
                            .build())
                        .build())
                    .clientIps(WafpolicyAllowlistRuleMatchClientIpArgs.builder()
                        .matchCriteria("string")
                        .addrs(WafpolicyAllowlistRuleMatchClientIpAddrArgs.builder()
                            .addr("string")
                            .type("string")
                            .build())
                        .groupRefs("string")
                        .prefixes(WafpolicyAllowlistRuleMatchClientIpPrefixArgs.builder()
                            .ipAddrs(WafpolicyAllowlistRuleMatchClientIpPrefixIpAddrArgs.builder()
                                .addr("string")
                                .type("string")
                                .build())
                            .mask("string")
                            .build())
                        .ranges(WafpolicyAllowlistRuleMatchClientIpRangeArgs.builder()
                            .begins(WafpolicyAllowlistRuleMatchClientIpRangeBeginArgs.builder()
                                .addr("string")
                                .type("string")
                                .build())
                            .ends(WafpolicyAllowlistRuleMatchClientIpRangeEndArgs.builder()
                                .addr("string")
                                .type("string")
                                .build())
                            .build())
                        .build())
                    .cookies(WafpolicyAllowlistRuleMatchCookieArgs.builder()
                        .matchCriteria("string")
                        .name("string")
                        .matchCase("string")
                        .value("string")
                        .build())
                    .geoMatches(WafpolicyAllowlistRuleMatchGeoMatchArgs.builder()
                        .attribute("string")
                        .matchOperation("string")
                        .values("string")
                        .build())
                    .hdrs(WafpolicyAllowlistRuleMatchHdrArgs.builder()
                        .hdr("string")
                        .matchCriteria("string")
                        .matchCase("string")
                        .stringGroupRefs("string")
                        .values("string")
                        .build())
                    .hostHdrs(WafpolicyAllowlistRuleMatchHostHdrArgs.builder()
                        .matchCriteria("string")
                        .matchCase("string")
                        .values("string")
                        .build())
                    .ipReputationTypes(WafpolicyAllowlistRuleMatchIpReputationTypeArgs.builder()
                        .matchOperation("string")
                        .reputationTypes("string")
                        .build())
                    .methods(WafpolicyAllowlistRuleMatchMethodArgs.builder()
                        .matchCriteria("string")
                        .methods("string")
                        .build())
                    .paths(WafpolicyAllowlistRuleMatchPathArgs.builder()
                        .matchCriteria("string")
                        .matchCase("string")
                        .matchDecodedString("string")
                        .matchStrs("string")
                        .stringGroupRefs("string")
                        .build())
                    .protocols(WafpolicyAllowlistRuleMatchProtocolArgs.builder()
                        .matchCriteria("string")
                        .protocols("string")
                        .build())
                    .queries(WafpolicyAllowlistRuleMatchQueryArgs.builder()
                        .matchCriteria("string")
                        .matchCase("string")
                        .matchDecodedString("string")
                        .matchStrs("string")
                        .stringGroupRefs("string")
                        .build())
                    .sourceIps(WafpolicyAllowlistRuleMatchSourceIpArgs.builder()
                        .matchCriteria("string")
                        .addrs(WafpolicyAllowlistRuleMatchSourceIpAddrArgs.builder()
                            .addr("string")
                            .type("string")
                            .build())
                        .groupRefs("string")
                        .prefixes(WafpolicyAllowlistRuleMatchSourceIpPrefixArgs.builder()
                            .ipAddrs(WafpolicyAllowlistRuleMatchSourceIpPrefixIpAddrArgs.builder()
                                .addr("string")
                                .type("string")
                                .build())
                            .mask("string")
                            .build())
                        .ranges(WafpolicyAllowlistRuleMatchSourceIpRangeArgs.builder()
                            .begins(WafpolicyAllowlistRuleMatchSourceIpRangeBeginArgs.builder()
                                .addr("string")
                                .type("string")
                                .build())
                            .ends(WafpolicyAllowlistRuleMatchSourceIpRangeEndArgs.builder()
                                .addr("string")
                                .type("string")
                                .build())
                            .build())
                        .build())
                    .tlsFingerprintMatches(WafpolicyAllowlistRuleMatchTlsFingerprintMatchArgs.builder()
                        .matchOperation("string")
                        .fingerprints("string")
                        .stringGroupRefs("string")
                        .build())
                    .versions(WafpolicyAllowlistRuleMatchVersionArgs.builder()
                        .matchCriteria("string")
                        .versions("string")
                        .build())
                    .vsPorts(WafpolicyAllowlistRuleMatchVsPortArgs.builder()
                        .matchCriteria("string")
                        .ports(0)
                        .build())
                    .build())
                .name("string")
                .description("string")
                .enable("string")
                .samplingPercent("string")
                .build())
            .build())
        .wafpolicyId("string")
        .build());
    
    wafpolicy_resource = avi.Wafpolicy("wafpolicyResource",
        waf_profile_ref="string",
        geo_db_ref="string",
        positive_security_models=[{
            "group_refs": ["string"],
        }],
        auto_update_crs="string",
        bypass_static_extensions="string",
        confidence_overrides=[{
            "confid_high_value": "string",
            "confid_low_value": "string",
            "confid_probable_value": "string",
            "confid_very_high_value": "string",
        }],
        configpb_attributes=[{
            "version": "string",
        }],
        created_by="string",
        crs_overrides=[{
            "name": "string",
            "enable": "string",
            "exclude_lists": [{
                "client_subnets": [{
                    "ip_addrs": [{
                        "addr": "string",
                        "type": "string",
                    }],
                    "mask": "string",
                }],
                "description": "string",
                "match_element": "string",
                "match_element_criterias": [{
                    "match_case": "string",
                    "match_op": "string",
                }],
                "uri_match_criterias": [{
                    "match_case": "string",
                    "match_op": "string",
                }],
                "uri_path": "string",
            }],
            "mode": "string",
            "rule_overrides": [{
                "rule_id": "string",
                "enable": "string",
                "exclude_lists": [{
                    "client_subnets": [{
                        "ip_addrs": [{
                            "addr": "string",
                            "type": "string",
                        }],
                        "mask": "string",
                    }],
                    "description": "string",
                    "match_element": "string",
                    "match_element_criterias": [{
                        "match_case": "string",
                        "match_op": "string",
                    }],
                    "uri_match_criterias": [{
                        "match_case": "string",
                        "match_op": "string",
                    }],
                    "uri_path": "string",
                }],
                "mode": "string",
            }],
        }],
        description="string",
        enable_app_learning="string",
        enable_auto_rule_updates="string",
        enable_regex_learning="string",
        failure_mode="string",
        allow_mode_delegation="string",
        application_signatures=[{
            "provider_ref": "string",
            "resolved_rules": [{
                "index": "string",
                "rule": "string",
                "enable": "string",
                "exclude_lists": [{
                    "client_subnets": [{
                        "ip_addrs": [{
                            "addr": "string",
                            "type": "string",
                        }],
                        "mask": "string",
                    }],
                    "description": "string",
                    "match_element": "string",
                    "match_element_criterias": [{
                        "match_case": "string",
                        "match_op": "string",
                    }],
                    "uri_match_criterias": [{
                        "match_case": "string",
                        "match_op": "string",
                    }],
                    "uri_path": "string",
                }],
                "is_sensitive": "string",
                "mode": "string",
                "name": "string",
                "paranoia_level": "string",
                "phase": "string",
                "rule_id": "string",
                "tags": ["string"],
            }],
            "rule_overrides": [{
                "rule_id": "string",
                "enable": "string",
                "exclude_lists": [{
                    "client_subnets": [{
                        "ip_addrs": [{
                            "addr": "string",
                            "type": "string",
                        }],
                        "mask": "string",
                    }],
                    "description": "string",
                    "match_element": "string",
                    "match_element_criterias": [{
                        "match_case": "string",
                        "match_op": "string",
                    }],
                    "uri_match_criterias": [{
                        "match_case": "string",
                        "match_op": "string",
                    }],
                    "uri_path": "string",
                }],
                "mode": "string",
            }],
            "ruleset_version": "string",
            "selected_applications": ["string"],
        }],
        learning_params=[{
            "enable_learn_from_bots": "string",
            "enable_per_uri_learning": "string",
            "learn_from_authenticated_clients_only": "string",
            "learn_from_bots": [{
                "match_operation": "string",
                "classifications": [{
                    "type": "string",
                    "user_defined_type": "string",
                }],
            }],
            "max_params": "string",
            "max_uris": "string",
            "min_hits_to_learn": "string",
            "sampling_percent": "string",
            "trusted_ipgroup_ref": "string",
            "update_interval": "string",
        }],
        pre_crs_groups=[{
            "index": "string",
            "name": "string",
            "enable": "string",
            "exclude_lists": [{
                "client_subnets": [{
                    "ip_addrs": [{
                        "addr": "string",
                        "type": "string",
                    }],
                    "mask": "string",
                }],
                "description": "string",
                "match_element": "string",
                "match_element_criterias": [{
                    "match_case": "string",
                    "match_op": "string",
                }],
                "uri_match_criterias": [{
                    "match_case": "string",
                    "match_op": "string",
                }],
                "uri_path": "string",
            }],
            "rules": [{
                "index": "string",
                "rule": "string",
                "enable": "string",
                "exclude_lists": [{
                    "client_subnets": [{
                        "ip_addrs": [{
                            "addr": "string",
                            "type": "string",
                        }],
                        "mask": "string",
                    }],
                    "description": "string",
                    "match_element": "string",
                    "match_element_criterias": [{
                        "match_case": "string",
                        "match_op": "string",
                    }],
                    "uri_match_criterias": [{
                        "match_case": "string",
                        "match_op": "string",
                    }],
                    "uri_path": "string",
                }],
                "is_sensitive": "string",
                "mode": "string",
                "name": "string",
                "paranoia_level": "string",
                "phase": "string",
                "rule_id": "string",
                "tags": ["string"],
            }],
        }],
        mode="string",
        name="string",
        paranoia_level="string",
        markers=[{
            "key": "string",
            "values": ["string"],
        }],
        post_crs_groups=[{
            "index": "string",
            "name": "string",
            "enable": "string",
            "exclude_lists": [{
                "client_subnets": [{
                    "ip_addrs": [{
                        "addr": "string",
                        "type": "string",
                    }],
                    "mask": "string",
                }],
                "description": "string",
                "match_element": "string",
                "match_element_criterias": [{
                    "match_case": "string",
                    "match_op": "string",
                }],
                "uri_match_criterias": [{
                    "match_case": "string",
                    "match_op": "string",
                }],
                "uri_path": "string",
            }],
            "rules": [{
                "index": "string",
                "rule": "string",
                "enable": "string",
                "exclude_lists": [{
                    "client_subnets": [{
                        "ip_addrs": [{
                            "addr": "string",
                            "type": "string",
                        }],
                        "mask": "string",
                    }],
                    "description": "string",
                    "match_element": "string",
                    "match_element_criterias": [{
                        "match_case": "string",
                        "match_op": "string",
                    }],
                    "uri_match_criterias": [{
                        "match_case": "string",
                        "match_op": "string",
                    }],
                    "uri_path": "string",
                }],
                "is_sensitive": "string",
                "mode": "string",
                "name": "string",
                "paranoia_level": "string",
                "phase": "string",
                "rule_id": "string",
                "tags": ["string"],
            }],
        }],
        min_confidence="string",
        required_data_files=[{
            "name": "string",
            "type": "string",
        }],
        tenant_ref="string",
        updated_crs_rules_in_detection_mode="string",
        uuid="string",
        waf_crs_ref="string",
        allowlists=[{
            "rules": [{
                "actions": ["string"],
                "index": "string",
                "matches": [{
                    "bot_detection_results": [{
                        "match_operation": "string",
                        "classifications": [{
                            "type": "string",
                            "user_defined_type": "string",
                        }],
                    }],
                    "client_ips": [{
                        "match_criteria": "string",
                        "addrs": [{
                            "addr": "string",
                            "type": "string",
                        }],
                        "group_refs": ["string"],
                        "prefixes": [{
                            "ip_addrs": [{
                                "addr": "string",
                                "type": "string",
                            }],
                            "mask": "string",
                        }],
                        "ranges": [{
                            "begins": [{
                                "addr": "string",
                                "type": "string",
                            }],
                            "ends": [{
                                "addr": "string",
                                "type": "string",
                            }],
                        }],
                    }],
                    "cookies": [{
                        "match_criteria": "string",
                        "name": "string",
                        "match_case": "string",
                        "value": "string",
                    }],
                    "geo_matches": [{
                        "attribute": "string",
                        "match_operation": "string",
                        "values": ["string"],
                    }],
                    "hdrs": [{
                        "hdr": "string",
                        "match_criteria": "string",
                        "match_case": "string",
                        "string_group_refs": ["string"],
                        "values": ["string"],
                    }],
                    "host_hdrs": [{
                        "match_criteria": "string",
                        "match_case": "string",
                        "values": ["string"],
                    }],
                    "ip_reputation_types": [{
                        "match_operation": "string",
                        "reputation_types": ["string"],
                    }],
                    "methods": [{
                        "match_criteria": "string",
                        "methods": ["string"],
                    }],
                    "paths": [{
                        "match_criteria": "string",
                        "match_case": "string",
                        "match_decoded_string": "string",
                        "match_strs": ["string"],
                        "string_group_refs": ["string"],
                    }],
                    "protocols": [{
                        "match_criteria": "string",
                        "protocols": "string",
                    }],
                    "queries": [{
                        "match_criteria": "string",
                        "match_case": "string",
                        "match_decoded_string": "string",
                        "match_strs": ["string"],
                        "string_group_refs": ["string"],
                    }],
                    "source_ips": [{
                        "match_criteria": "string",
                        "addrs": [{
                            "addr": "string",
                            "type": "string",
                        }],
                        "group_refs": ["string"],
                        "prefixes": [{
                            "ip_addrs": [{
                                "addr": "string",
                                "type": "string",
                            }],
                            "mask": "string",
                        }],
                        "ranges": [{
                            "begins": [{
                                "addr": "string",
                                "type": "string",
                            }],
                            "ends": [{
                                "addr": "string",
                                "type": "string",
                            }],
                        }],
                    }],
                    "tls_fingerprint_matches": [{
                        "match_operation": "string",
                        "fingerprints": ["string"],
                        "string_group_refs": ["string"],
                    }],
                    "versions": [{
                        "match_criteria": "string",
                        "versions": ["string"],
                    }],
                    "vs_ports": [{
                        "match_criteria": "string",
                        "ports": [0],
                    }],
                }],
                "name": "string",
                "description": "string",
                "enable": "string",
                "sampling_percent": "string",
            }],
        }],
        wafpolicy_id="string")
    
    const wafpolicyResource = new avi.Wafpolicy("wafpolicyResource", {
        wafProfileRef: "string",
        geoDbRef: "string",
        positiveSecurityModels: [{
            groupRefs: ["string"],
        }],
        autoUpdateCrs: "string",
        bypassStaticExtensions: "string",
        confidenceOverrides: [{
            confidHighValue: "string",
            confidLowValue: "string",
            confidProbableValue: "string",
            confidVeryHighValue: "string",
        }],
        configpbAttributes: [{
            version: "string",
        }],
        createdBy: "string",
        crsOverrides: [{
            name: "string",
            enable: "string",
            excludeLists: [{
                clientSubnets: [{
                    ipAddrs: [{
                        addr: "string",
                        type: "string",
                    }],
                    mask: "string",
                }],
                description: "string",
                matchElement: "string",
                matchElementCriterias: [{
                    matchCase: "string",
                    matchOp: "string",
                }],
                uriMatchCriterias: [{
                    matchCase: "string",
                    matchOp: "string",
                }],
                uriPath: "string",
            }],
            mode: "string",
            ruleOverrides: [{
                ruleId: "string",
                enable: "string",
                excludeLists: [{
                    clientSubnets: [{
                        ipAddrs: [{
                            addr: "string",
                            type: "string",
                        }],
                        mask: "string",
                    }],
                    description: "string",
                    matchElement: "string",
                    matchElementCriterias: [{
                        matchCase: "string",
                        matchOp: "string",
                    }],
                    uriMatchCriterias: [{
                        matchCase: "string",
                        matchOp: "string",
                    }],
                    uriPath: "string",
                }],
                mode: "string",
            }],
        }],
        description: "string",
        enableAppLearning: "string",
        enableAutoRuleUpdates: "string",
        enableRegexLearning: "string",
        failureMode: "string",
        allowModeDelegation: "string",
        applicationSignatures: [{
            providerRef: "string",
            resolvedRules: [{
                index: "string",
                rule: "string",
                enable: "string",
                excludeLists: [{
                    clientSubnets: [{
                        ipAddrs: [{
                            addr: "string",
                            type: "string",
                        }],
                        mask: "string",
                    }],
                    description: "string",
                    matchElement: "string",
                    matchElementCriterias: [{
                        matchCase: "string",
                        matchOp: "string",
                    }],
                    uriMatchCriterias: [{
                        matchCase: "string",
                        matchOp: "string",
                    }],
                    uriPath: "string",
                }],
                isSensitive: "string",
                mode: "string",
                name: "string",
                paranoiaLevel: "string",
                phase: "string",
                ruleId: "string",
                tags: ["string"],
            }],
            ruleOverrides: [{
                ruleId: "string",
                enable: "string",
                excludeLists: [{
                    clientSubnets: [{
                        ipAddrs: [{
                            addr: "string",
                            type: "string",
                        }],
                        mask: "string",
                    }],
                    description: "string",
                    matchElement: "string",
                    matchElementCriterias: [{
                        matchCase: "string",
                        matchOp: "string",
                    }],
                    uriMatchCriterias: [{
                        matchCase: "string",
                        matchOp: "string",
                    }],
                    uriPath: "string",
                }],
                mode: "string",
            }],
            rulesetVersion: "string",
            selectedApplications: ["string"],
        }],
        learningParams: [{
            enableLearnFromBots: "string",
            enablePerUriLearning: "string",
            learnFromAuthenticatedClientsOnly: "string",
            learnFromBots: [{
                matchOperation: "string",
                classifications: [{
                    type: "string",
                    userDefinedType: "string",
                }],
            }],
            maxParams: "string",
            maxUris: "string",
            minHitsToLearn: "string",
            samplingPercent: "string",
            trustedIpgroupRef: "string",
            updateInterval: "string",
        }],
        preCrsGroups: [{
            index: "string",
            name: "string",
            enable: "string",
            excludeLists: [{
                clientSubnets: [{
                    ipAddrs: [{
                        addr: "string",
                        type: "string",
                    }],
                    mask: "string",
                }],
                description: "string",
                matchElement: "string",
                matchElementCriterias: [{
                    matchCase: "string",
                    matchOp: "string",
                }],
                uriMatchCriterias: [{
                    matchCase: "string",
                    matchOp: "string",
                }],
                uriPath: "string",
            }],
            rules: [{
                index: "string",
                rule: "string",
                enable: "string",
                excludeLists: [{
                    clientSubnets: [{
                        ipAddrs: [{
                            addr: "string",
                            type: "string",
                        }],
                        mask: "string",
                    }],
                    description: "string",
                    matchElement: "string",
                    matchElementCriterias: [{
                        matchCase: "string",
                        matchOp: "string",
                    }],
                    uriMatchCriterias: [{
                        matchCase: "string",
                        matchOp: "string",
                    }],
                    uriPath: "string",
                }],
                isSensitive: "string",
                mode: "string",
                name: "string",
                paranoiaLevel: "string",
                phase: "string",
                ruleId: "string",
                tags: ["string"],
            }],
        }],
        mode: "string",
        name: "string",
        paranoiaLevel: "string",
        markers: [{
            key: "string",
            values: ["string"],
        }],
        postCrsGroups: [{
            index: "string",
            name: "string",
            enable: "string",
            excludeLists: [{
                clientSubnets: [{
                    ipAddrs: [{
                        addr: "string",
                        type: "string",
                    }],
                    mask: "string",
                }],
                description: "string",
                matchElement: "string",
                matchElementCriterias: [{
                    matchCase: "string",
                    matchOp: "string",
                }],
                uriMatchCriterias: [{
                    matchCase: "string",
                    matchOp: "string",
                }],
                uriPath: "string",
            }],
            rules: [{
                index: "string",
                rule: "string",
                enable: "string",
                excludeLists: [{
                    clientSubnets: [{
                        ipAddrs: [{
                            addr: "string",
                            type: "string",
                        }],
                        mask: "string",
                    }],
                    description: "string",
                    matchElement: "string",
                    matchElementCriterias: [{
                        matchCase: "string",
                        matchOp: "string",
                    }],
                    uriMatchCriterias: [{
                        matchCase: "string",
                        matchOp: "string",
                    }],
                    uriPath: "string",
                }],
                isSensitive: "string",
                mode: "string",
                name: "string",
                paranoiaLevel: "string",
                phase: "string",
                ruleId: "string",
                tags: ["string"],
            }],
        }],
        minConfidence: "string",
        requiredDataFiles: [{
            name: "string",
            type: "string",
        }],
        tenantRef: "string",
        updatedCrsRulesInDetectionMode: "string",
        uuid: "string",
        wafCrsRef: "string",
        allowlists: [{
            rules: [{
                actions: ["string"],
                index: "string",
                matches: [{
                    botDetectionResults: [{
                        matchOperation: "string",
                        classifications: [{
                            type: "string",
                            userDefinedType: "string",
                        }],
                    }],
                    clientIps: [{
                        matchCriteria: "string",
                        addrs: [{
                            addr: "string",
                            type: "string",
                        }],
                        groupRefs: ["string"],
                        prefixes: [{
                            ipAddrs: [{
                                addr: "string",
                                type: "string",
                            }],
                            mask: "string",
                        }],
                        ranges: [{
                            begins: [{
                                addr: "string",
                                type: "string",
                            }],
                            ends: [{
                                addr: "string",
                                type: "string",
                            }],
                        }],
                    }],
                    cookies: [{
                        matchCriteria: "string",
                        name: "string",
                        matchCase: "string",
                        value: "string",
                    }],
                    geoMatches: [{
                        attribute: "string",
                        matchOperation: "string",
                        values: ["string"],
                    }],
                    hdrs: [{
                        hdr: "string",
                        matchCriteria: "string",
                        matchCase: "string",
                        stringGroupRefs: ["string"],
                        values: ["string"],
                    }],
                    hostHdrs: [{
                        matchCriteria: "string",
                        matchCase: "string",
                        values: ["string"],
                    }],
                    ipReputationTypes: [{
                        matchOperation: "string",
                        reputationTypes: ["string"],
                    }],
                    methods: [{
                        matchCriteria: "string",
                        methods: ["string"],
                    }],
                    paths: [{
                        matchCriteria: "string",
                        matchCase: "string",
                        matchDecodedString: "string",
                        matchStrs: ["string"],
                        stringGroupRefs: ["string"],
                    }],
                    protocols: [{
                        matchCriteria: "string",
                        protocols: "string",
                    }],
                    queries: [{
                        matchCriteria: "string",
                        matchCase: "string",
                        matchDecodedString: "string",
                        matchStrs: ["string"],
                        stringGroupRefs: ["string"],
                    }],
                    sourceIps: [{
                        matchCriteria: "string",
                        addrs: [{
                            addr: "string",
                            type: "string",
                        }],
                        groupRefs: ["string"],
                        prefixes: [{
                            ipAddrs: [{
                                addr: "string",
                                type: "string",
                            }],
                            mask: "string",
                        }],
                        ranges: [{
                            begins: [{
                                addr: "string",
                                type: "string",
                            }],
                            ends: [{
                                addr: "string",
                                type: "string",
                            }],
                        }],
                    }],
                    tlsFingerprintMatches: [{
                        matchOperation: "string",
                        fingerprints: ["string"],
                        stringGroupRefs: ["string"],
                    }],
                    versions: [{
                        matchCriteria: "string",
                        versions: ["string"],
                    }],
                    vsPorts: [{
                        matchCriteria: "string",
                        ports: [0],
                    }],
                }],
                name: "string",
                description: "string",
                enable: "string",
                samplingPercent: "string",
            }],
        }],
        wafpolicyId: "string",
    });
    
    type: avi:Wafpolicy
    properties:
        allowModeDelegation: string
        allowlists:
            - rules:
                - actions:
                    - string
                  description: string
                  enable: string
                  index: string
                  matches:
                    - botDetectionResults:
                        - classifications:
                            - type: string
                              userDefinedType: string
                          matchOperation: string
                      clientIps:
                        - addrs:
                            - addr: string
                              type: string
                          groupRefs:
                            - string
                          matchCriteria: string
                          prefixes:
                            - ipAddrs:
                                - addr: string
                                  type: string
                              mask: string
                          ranges:
                            - begins:
                                - addr: string
                                  type: string
                              ends:
                                - addr: string
                                  type: string
                      cookies:
                        - matchCase: string
                          matchCriteria: string
                          name: string
                          value: string
                      geoMatches:
                        - attribute: string
                          matchOperation: string
                          values:
                            - string
                      hdrs:
                        - hdr: string
                          matchCase: string
                          matchCriteria: string
                          stringGroupRefs:
                            - string
                          values:
                            - string
                      hostHdrs:
                        - matchCase: string
                          matchCriteria: string
                          values:
                            - string
                      ipReputationTypes:
                        - matchOperation: string
                          reputationTypes:
                            - string
                      methods:
                        - matchCriteria: string
                          methods:
                            - string
                      paths:
                        - matchCase: string
                          matchCriteria: string
                          matchDecodedString: string
                          matchStrs:
                            - string
                          stringGroupRefs:
                            - string
                      protocols:
                        - matchCriteria: string
                          protocols: string
                      queries:
                        - matchCase: string
                          matchCriteria: string
                          matchDecodedString: string
                          matchStrs:
                            - string
                          stringGroupRefs:
                            - string
                      sourceIps:
                        - addrs:
                            - addr: string
                              type: string
                          groupRefs:
                            - string
                          matchCriteria: string
                          prefixes:
                            - ipAddrs:
                                - addr: string
                                  type: string
                              mask: string
                          ranges:
                            - begins:
                                - addr: string
                                  type: string
                              ends:
                                - addr: string
                                  type: string
                      tlsFingerprintMatches:
                        - fingerprints:
                            - string
                          matchOperation: string
                          stringGroupRefs:
                            - string
                      versions:
                        - matchCriteria: string
                          versions:
                            - string
                      vsPorts:
                        - matchCriteria: string
                          ports:
                            - 0
                  name: string
                  samplingPercent: string
        applicationSignatures:
            - providerRef: string
              resolvedRules:
                - enable: string
                  excludeLists:
                    - clientSubnets:
                        - ipAddrs:
                            - addr: string
                              type: string
                          mask: string
                      description: string
                      matchElement: string
                      matchElementCriterias:
                        - matchCase: string
                          matchOp: string
                      uriMatchCriterias:
                        - matchCase: string
                          matchOp: string
                      uriPath: string
                  index: string
                  isSensitive: string
                  mode: string
                  name: string
                  paranoiaLevel: string
                  phase: string
                  rule: string
                  ruleId: string
                  tags:
                    - string
              ruleOverrides:
                - enable: string
                  excludeLists:
                    - clientSubnets:
                        - ipAddrs:
                            - addr: string
                              type: string
                          mask: string
                      description: string
                      matchElement: string
                      matchElementCriterias:
                        - matchCase: string
                          matchOp: string
                      uriMatchCriterias:
                        - matchCase: string
                          matchOp: string
                      uriPath: string
                  mode: string
                  ruleId: string
              rulesetVersion: string
              selectedApplications:
                - string
        autoUpdateCrs: string
        bypassStaticExtensions: string
        confidenceOverrides:
            - confidHighValue: string
              confidLowValue: string
              confidProbableValue: string
              confidVeryHighValue: string
        configpbAttributes:
            - version: string
        createdBy: string
        crsOverrides:
            - enable: string
              excludeLists:
                - clientSubnets:
                    - ipAddrs:
                        - addr: string
                          type: string
                      mask: string
                  description: string
                  matchElement: string
                  matchElementCriterias:
                    - matchCase: string
                      matchOp: string
                  uriMatchCriterias:
                    - matchCase: string
                      matchOp: string
                  uriPath: string
              mode: string
              name: string
              ruleOverrides:
                - enable: string
                  excludeLists:
                    - clientSubnets:
                        - ipAddrs:
                            - addr: string
                              type: string
                          mask: string
                      description: string
                      matchElement: string
                      matchElementCriterias:
                        - matchCase: string
                          matchOp: string
                      uriMatchCriterias:
                        - matchCase: string
                          matchOp: string
                      uriPath: string
                  mode: string
                  ruleId: string
        description: string
        enableAppLearning: string
        enableAutoRuleUpdates: string
        enableRegexLearning: string
        failureMode: string
        geoDbRef: string
        learningParams:
            - enableLearnFromBots: string
              enablePerUriLearning: string
              learnFromAuthenticatedClientsOnly: string
              learnFromBots:
                - classifications:
                    - type: string
                      userDefinedType: string
                  matchOperation: string
              maxParams: string
              maxUris: string
              minHitsToLearn: string
              samplingPercent: string
              trustedIpgroupRef: string
              updateInterval: string
        markers:
            - key: string
              values:
                - string
        minConfidence: string
        mode: string
        name: string
        paranoiaLevel: string
        positiveSecurityModels:
            - groupRefs:
                - string
        postCrsGroups:
            - enable: string
              excludeLists:
                - clientSubnets:
                    - ipAddrs:
                        - addr: string
                          type: string
                      mask: string
                  description: string
                  matchElement: string
                  matchElementCriterias:
                    - matchCase: string
                      matchOp: string
                  uriMatchCriterias:
                    - matchCase: string
                      matchOp: string
                  uriPath: string
              index: string
              name: string
              rules:
                - enable: string
                  excludeLists:
                    - clientSubnets:
                        - ipAddrs:
                            - addr: string
                              type: string
                          mask: string
                      description: string
                      matchElement: string
                      matchElementCriterias:
                        - matchCase: string
                          matchOp: string
                      uriMatchCriterias:
                        - matchCase: string
                          matchOp: string
                      uriPath: string
                  index: string
                  isSensitive: string
                  mode: string
                  name: string
                  paranoiaLevel: string
                  phase: string
                  rule: string
                  ruleId: string
                  tags:
                    - string
        preCrsGroups:
            - enable: string
              excludeLists:
                - clientSubnets:
                    - ipAddrs:
                        - addr: string
                          type: string
                      mask: string
                  description: string
                  matchElement: string
                  matchElementCriterias:
                    - matchCase: string
                      matchOp: string
                  uriMatchCriterias:
                    - matchCase: string
                      matchOp: string
                  uriPath: string
              index: string
              name: string
              rules:
                - enable: string
                  excludeLists:
                    - clientSubnets:
                        - ipAddrs:
                            - addr: string
                              type: string
                          mask: string
                      description: string
                      matchElement: string
                      matchElementCriterias:
                        - matchCase: string
                          matchOp: string
                      uriMatchCriterias:
                        - matchCase: string
                          matchOp: string
                      uriPath: string
                  index: string
                  isSensitive: string
                  mode: string
                  name: string
                  paranoiaLevel: string
                  phase: string
                  rule: string
                  ruleId: string
                  tags:
                    - string
        requiredDataFiles:
            - name: string
              type: string
        tenantRef: string
        updatedCrsRulesInDetectionMode: string
        uuid: string
        wafCrsRef: string
        wafProfileRef: string
        wafpolicyId: string
    

    Wafpolicy 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 Wafpolicy resource accepts the following input properties:

    WafProfileRef string
    Waf profile for waf policy. It is a reference to an object of type wafprofile. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    AllowModeDelegation string
    Allow rules to overwrite the policy mode. This must be set if the policy mode is set to enforcement. Field introduced in 18.1.5, 18.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    Allowlists List<WafpolicyAllowlist>
    A set of rules which describe conditions under which the request will bypass the waf. This will be processed in the request header phase before any other waf related code. Field introduced in 20.1.3. Allowed with any value in enterprise, enterprise with cloud services edition.
    ApplicationSignatures List<WafpolicyApplicationSignature>
    Application specific signatures. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    AutoUpdateCrs string
    If this flag is set, the system will try to keep the crs version used in this policy up-to-date. If a newer crs object is available on this controller, the system will issue the crs upgrade process for this waf policy. It will not update polices if the current crs version is crs-version-not-applicable. Field introduced in 22.1.3. Allowed with any value in enterprise, enterprise with cloud services edition.
    BypassStaticExtensions string
    Enable the functionality to bypass waf for static file extensions. Field introduced in 22.1.1. Allowed with any value in enterprise, enterprise with cloud services edition.
    ConfidenceOverrides List<WafpolicyConfidenceOverride>
    Configure thresholds for confidence labels. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    ConfigpbAttributes List<WafpolicyConfigpbAttribute>
    Protobuf versioning for config pbs. Field introduced in 21.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    CreatedBy string
    Creator name. Field introduced in 17.2.4. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    CrsOverrides List<WafpolicyCrsOverride>
    Override attributes for crs rules. Field introduced in 20.1.6. Allowed with any value in enterprise, enterprise with cloud services edition.
    Description string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    EnableAppLearning string
    Enable application learning for this waf policy. Field introduced in 18.2.3. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    EnableAutoRuleUpdates string
    Enable application learning based rule updates on the waf profile. Rules will be programmed in dedicated waf learning group. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    EnableRegexLearning string
    Enable dynamic regex generation for positive security model rules. This is an experimental feature and shouldn't be used in production. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    FailureMode string
    Waf policy failure mode. This can be 'open' or 'closed'. Enum options - WAF_FAILURE_MODE_OPEN, WAF_FAILURE_MODE_CLOSED. Field introduced in 18.1.2. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    GeoDbRef string
    Geo location mapping database used by this wafpolicy. It is a reference to an object of type geodb. Field introduced in 21.1.1. Allowed with any value in enterprise, enterprise with cloud services edition.
    LearningParams List<WafpolicyLearningParam>
    Parameters for tuning application learning. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    Markers List<WafpolicyMarker>
    List of labels to be used for granular rbac. Field introduced in 20.1.5. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    MinConfidence string
    Minimum confidence label required for auto rule updates. Enum options - CONFIDENCE_VERY_HIGH, CONFIDENCE_HIGH, CONFIDENCE_PROBABLE, CONFIDENCE_LOW, CONFIDENCE_NONE. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    Mode string
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    Name string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    ParanoiaLevel string
    Waf ruleset paranoia mode. This is used to select rules based on the paranoia-level tag. Enum options - WAF_PARANOIA_LEVEL_LOW, WAF_PARANOIA_LEVEL_MEDIUM, WAF_PARANOIA_LEVEL_HIGH, WAF_PARANOIA_LEVEL_EXTREME. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    PositiveSecurityModels List<WafpolicyPositiveSecurityModel>
    The positive security model. This is used to describe how the request or parts of the request should look like. It is executed in the request body phase of avi waf. Field introduced in 18.2.3. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    PostCrsGroups List<WafpolicyPostCrsGroup>
    Waf rules are categorized in to groups based on their characterization. These groups are created by the user and will be enforced after the crs groups. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    PreCrsGroups List<WafpolicyPreCrsGroup>
    Waf rules are categorized in to groups based on their characterization. These groups are created by the user and will be enforced before the crs groups. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    RequiredDataFiles List<WafpolicyRequiredDataFile>
    The data files and types referred in this waf policy. Field introduced in 22.1.3. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    TenantRef string
    It is a reference to an object of type tenant. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    UpdatedCrsRulesInDetectionMode string
    While updating crs, the system will make sure that new rules are added in detection mode. It only has an effect if the policy is in enforcement mode. In this case, the update will set new rules into detection mode by adding crs_overrides for the new rules. If this flag is not set or if the policy mode is detection, rules will be added without new crs_overrides. This option is used for the auto_update_crs workflow as well as for the ui based crs update workflow. Field introduced in 22.1.3. Allowed with any value in enterprise, enterprise with cloud services edition.
    Uuid string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    WafCrsRef string
    Waf core ruleset used for the crs part of this policy. It is a reference to an object of type wafcrs. Field introduced in 18.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    WafpolicyId string
    WafProfileRef string
    Waf profile for waf policy. It is a reference to an object of type wafprofile. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    AllowModeDelegation string
    Allow rules to overwrite the policy mode. This must be set if the policy mode is set to enforcement. Field introduced in 18.1.5, 18.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    Allowlists []WafpolicyAllowlistArgs
    A set of rules which describe conditions under which the request will bypass the waf. This will be processed in the request header phase before any other waf related code. Field introduced in 20.1.3. Allowed with any value in enterprise, enterprise with cloud services edition.
    ApplicationSignatures []WafpolicyApplicationSignatureArgs
    Application specific signatures. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    AutoUpdateCrs string
    If this flag is set, the system will try to keep the crs version used in this policy up-to-date. If a newer crs object is available on this controller, the system will issue the crs upgrade process for this waf policy. It will not update polices if the current crs version is crs-version-not-applicable. Field introduced in 22.1.3. Allowed with any value in enterprise, enterprise with cloud services edition.
    BypassStaticExtensions string
    Enable the functionality to bypass waf for static file extensions. Field introduced in 22.1.1. Allowed with any value in enterprise, enterprise with cloud services edition.
    ConfidenceOverrides []WafpolicyConfidenceOverrideArgs
    Configure thresholds for confidence labels. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    ConfigpbAttributes []WafpolicyConfigpbAttributeArgs
    Protobuf versioning for config pbs. Field introduced in 21.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    CreatedBy string
    Creator name. Field introduced in 17.2.4. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    CrsOverrides []WafpolicyCrsOverrideArgs
    Override attributes for crs rules. Field introduced in 20.1.6. Allowed with any value in enterprise, enterprise with cloud services edition.
    Description string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    EnableAppLearning string
    Enable application learning for this waf policy. Field introduced in 18.2.3. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    EnableAutoRuleUpdates string
    Enable application learning based rule updates on the waf profile. Rules will be programmed in dedicated waf learning group. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    EnableRegexLearning string
    Enable dynamic regex generation for positive security model rules. This is an experimental feature and shouldn't be used in production. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    FailureMode string
    Waf policy failure mode. This can be 'open' or 'closed'. Enum options - WAF_FAILURE_MODE_OPEN, WAF_FAILURE_MODE_CLOSED. Field introduced in 18.1.2. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    GeoDbRef string
    Geo location mapping database used by this wafpolicy. It is a reference to an object of type geodb. Field introduced in 21.1.1. Allowed with any value in enterprise, enterprise with cloud services edition.
    LearningParams []WafpolicyLearningParamArgs
    Parameters for tuning application learning. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    Markers []WafpolicyMarkerArgs
    List of labels to be used for granular rbac. Field introduced in 20.1.5. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    MinConfidence string
    Minimum confidence label required for auto rule updates. Enum options - CONFIDENCE_VERY_HIGH, CONFIDENCE_HIGH, CONFIDENCE_PROBABLE, CONFIDENCE_LOW, CONFIDENCE_NONE. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    Mode string
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    Name string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    ParanoiaLevel string
    Waf ruleset paranoia mode. This is used to select rules based on the paranoia-level tag. Enum options - WAF_PARANOIA_LEVEL_LOW, WAF_PARANOIA_LEVEL_MEDIUM, WAF_PARANOIA_LEVEL_HIGH, WAF_PARANOIA_LEVEL_EXTREME. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    PositiveSecurityModels []WafpolicyPositiveSecurityModelArgs
    The positive security model. This is used to describe how the request or parts of the request should look like. It is executed in the request body phase of avi waf. Field introduced in 18.2.3. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    PostCrsGroups []WafpolicyPostCrsGroupArgs
    Waf rules are categorized in to groups based on their characterization. These groups are created by the user and will be enforced after the crs groups. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    PreCrsGroups []WafpolicyPreCrsGroupArgs
    Waf rules are categorized in to groups based on their characterization. These groups are created by the user and will be enforced before the crs groups. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    RequiredDataFiles []WafpolicyRequiredDataFileArgs
    The data files and types referred in this waf policy. Field introduced in 22.1.3. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    TenantRef string
    It is a reference to an object of type tenant. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    UpdatedCrsRulesInDetectionMode string
    While updating crs, the system will make sure that new rules are added in detection mode. It only has an effect if the policy is in enforcement mode. In this case, the update will set new rules into detection mode by adding crs_overrides for the new rules. If this flag is not set or if the policy mode is detection, rules will be added without new crs_overrides. This option is used for the auto_update_crs workflow as well as for the ui based crs update workflow. Field introduced in 22.1.3. Allowed with any value in enterprise, enterprise with cloud services edition.
    Uuid string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    WafCrsRef string
    Waf core ruleset used for the crs part of this policy. It is a reference to an object of type wafcrs. Field introduced in 18.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    WafpolicyId string
    wafProfileRef String
    Waf profile for waf policy. It is a reference to an object of type wafprofile. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    allowModeDelegation String
    Allow rules to overwrite the policy mode. This must be set if the policy mode is set to enforcement. Field introduced in 18.1.5, 18.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    allowlists List<WafpolicyAllowlist>
    A set of rules which describe conditions under which the request will bypass the waf. This will be processed in the request header phase before any other waf related code. Field introduced in 20.1.3. Allowed with any value in enterprise, enterprise with cloud services edition.
    applicationSignatures List<WafpolicyApplicationSignature>
    Application specific signatures. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    autoUpdateCrs String
    If this flag is set, the system will try to keep the crs version used in this policy up-to-date. If a newer crs object is available on this controller, the system will issue the crs upgrade process for this waf policy. It will not update polices if the current crs version is crs-version-not-applicable. Field introduced in 22.1.3. Allowed with any value in enterprise, enterprise with cloud services edition.
    bypassStaticExtensions String
    Enable the functionality to bypass waf for static file extensions. Field introduced in 22.1.1. Allowed with any value in enterprise, enterprise with cloud services edition.
    confidenceOverrides List<WafpolicyConfidenceOverride>
    Configure thresholds for confidence labels. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    configpbAttributes List<WafpolicyConfigpbAttribute>
    Protobuf versioning for config pbs. Field introduced in 21.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    createdBy String
    Creator name. Field introduced in 17.2.4. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    crsOverrides List<WafpolicyCrsOverride>
    Override attributes for crs rules. Field introduced in 20.1.6. Allowed with any value in enterprise, enterprise with cloud services edition.
    description String
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    enableAppLearning String
    Enable application learning for this waf policy. Field introduced in 18.2.3. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    enableAutoRuleUpdates String
    Enable application learning based rule updates on the waf profile. Rules will be programmed in dedicated waf learning group. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    enableRegexLearning String
    Enable dynamic regex generation for positive security model rules. This is an experimental feature and shouldn't be used in production. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    failureMode String
    Waf policy failure mode. This can be 'open' or 'closed'. Enum options - WAF_FAILURE_MODE_OPEN, WAF_FAILURE_MODE_CLOSED. Field introduced in 18.1.2. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    geoDbRef String
    Geo location mapping database used by this wafpolicy. It is a reference to an object of type geodb. Field introduced in 21.1.1. Allowed with any value in enterprise, enterprise with cloud services edition.
    learningParams List<WafpolicyLearningParam>
    Parameters for tuning application learning. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    markers List<WafpolicyMarker>
    List of labels to be used for granular rbac. Field introduced in 20.1.5. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    minConfidence String
    Minimum confidence label required for auto rule updates. Enum options - CONFIDENCE_VERY_HIGH, CONFIDENCE_HIGH, CONFIDENCE_PROBABLE, CONFIDENCE_LOW, CONFIDENCE_NONE. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    mode String
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    name String
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    paranoiaLevel String
    Waf ruleset paranoia mode. This is used to select rules based on the paranoia-level tag. Enum options - WAF_PARANOIA_LEVEL_LOW, WAF_PARANOIA_LEVEL_MEDIUM, WAF_PARANOIA_LEVEL_HIGH, WAF_PARANOIA_LEVEL_EXTREME. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    positiveSecurityModels List<WafpolicyPositiveSecurityModel>
    The positive security model. This is used to describe how the request or parts of the request should look like. It is executed in the request body phase of avi waf. Field introduced in 18.2.3. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    postCrsGroups List<WafpolicyPostCrsGroup>
    Waf rules are categorized in to groups based on their characterization. These groups are created by the user and will be enforced after the crs groups. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    preCrsGroups List<WafpolicyPreCrsGroup>
    Waf rules are categorized in to groups based on their characterization. These groups are created by the user and will be enforced before the crs groups. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    requiredDataFiles List<WafpolicyRequiredDataFile>
    The data files and types referred in this waf policy. Field introduced in 22.1.3. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    tenantRef String
    It is a reference to an object of type tenant. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    updatedCrsRulesInDetectionMode String
    While updating crs, the system will make sure that new rules are added in detection mode. It only has an effect if the policy is in enforcement mode. In this case, the update will set new rules into detection mode by adding crs_overrides for the new rules. If this flag is not set or if the policy mode is detection, rules will be added without new crs_overrides. This option is used for the auto_update_crs workflow as well as for the ui based crs update workflow. Field introduced in 22.1.3. Allowed with any value in enterprise, enterprise with cloud services edition.
    uuid String
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    wafCrsRef String
    Waf core ruleset used for the crs part of this policy. It is a reference to an object of type wafcrs. Field introduced in 18.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    wafpolicyId String
    wafProfileRef string
    Waf profile for waf policy. It is a reference to an object of type wafprofile. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    allowModeDelegation string
    Allow rules to overwrite the policy mode. This must be set if the policy mode is set to enforcement. Field introduced in 18.1.5, 18.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    allowlists WafpolicyAllowlist[]
    A set of rules which describe conditions under which the request will bypass the waf. This will be processed in the request header phase before any other waf related code. Field introduced in 20.1.3. Allowed with any value in enterprise, enterprise with cloud services edition.
    applicationSignatures WafpolicyApplicationSignature[]
    Application specific signatures. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    autoUpdateCrs string
    If this flag is set, the system will try to keep the crs version used in this policy up-to-date. If a newer crs object is available on this controller, the system will issue the crs upgrade process for this waf policy. It will not update polices if the current crs version is crs-version-not-applicable. Field introduced in 22.1.3. Allowed with any value in enterprise, enterprise with cloud services edition.
    bypassStaticExtensions string
    Enable the functionality to bypass waf for static file extensions. Field introduced in 22.1.1. Allowed with any value in enterprise, enterprise with cloud services edition.
    confidenceOverrides WafpolicyConfidenceOverride[]
    Configure thresholds for confidence labels. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    configpbAttributes WafpolicyConfigpbAttribute[]
    Protobuf versioning for config pbs. Field introduced in 21.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    createdBy string
    Creator name. Field introduced in 17.2.4. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    crsOverrides WafpolicyCrsOverride[]
    Override attributes for crs rules. Field introduced in 20.1.6. Allowed with any value in enterprise, enterprise with cloud services edition.
    description string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    enableAppLearning string
    Enable application learning for this waf policy. Field introduced in 18.2.3. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    enableAutoRuleUpdates string
    Enable application learning based rule updates on the waf profile. Rules will be programmed in dedicated waf learning group. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    enableRegexLearning string
    Enable dynamic regex generation for positive security model rules. This is an experimental feature and shouldn't be used in production. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    failureMode string
    Waf policy failure mode. This can be 'open' or 'closed'. Enum options - WAF_FAILURE_MODE_OPEN, WAF_FAILURE_MODE_CLOSED. Field introduced in 18.1.2. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    geoDbRef string
    Geo location mapping database used by this wafpolicy. It is a reference to an object of type geodb. Field introduced in 21.1.1. Allowed with any value in enterprise, enterprise with cloud services edition.
    learningParams WafpolicyLearningParam[]
    Parameters for tuning application learning. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    markers WafpolicyMarker[]
    List of labels to be used for granular rbac. Field introduced in 20.1.5. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    minConfidence string
    Minimum confidence label required for auto rule updates. Enum options - CONFIDENCE_VERY_HIGH, CONFIDENCE_HIGH, CONFIDENCE_PROBABLE, CONFIDENCE_LOW, CONFIDENCE_NONE. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    mode string
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    name string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    paranoiaLevel string
    Waf ruleset paranoia mode. This is used to select rules based on the paranoia-level tag. Enum options - WAF_PARANOIA_LEVEL_LOW, WAF_PARANOIA_LEVEL_MEDIUM, WAF_PARANOIA_LEVEL_HIGH, WAF_PARANOIA_LEVEL_EXTREME. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    positiveSecurityModels WafpolicyPositiveSecurityModel[]
    The positive security model. This is used to describe how the request or parts of the request should look like. It is executed in the request body phase of avi waf. Field introduced in 18.2.3. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    postCrsGroups WafpolicyPostCrsGroup[]
    Waf rules are categorized in to groups based on their characterization. These groups are created by the user and will be enforced after the crs groups. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    preCrsGroups WafpolicyPreCrsGroup[]
    Waf rules are categorized in to groups based on their characterization. These groups are created by the user and will be enforced before the crs groups. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    requiredDataFiles WafpolicyRequiredDataFile[]
    The data files and types referred in this waf policy. Field introduced in 22.1.3. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    tenantRef string
    It is a reference to an object of type tenant. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    updatedCrsRulesInDetectionMode string
    While updating crs, the system will make sure that new rules are added in detection mode. It only has an effect if the policy is in enforcement mode. In this case, the update will set new rules into detection mode by adding crs_overrides for the new rules. If this flag is not set or if the policy mode is detection, rules will be added without new crs_overrides. This option is used for the auto_update_crs workflow as well as for the ui based crs update workflow. Field introduced in 22.1.3. Allowed with any value in enterprise, enterprise with cloud services edition.
    uuid string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    wafCrsRef string
    Waf core ruleset used for the crs part of this policy. It is a reference to an object of type wafcrs. Field introduced in 18.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    wafpolicyId string
    waf_profile_ref str
    Waf profile for waf policy. It is a reference to an object of type wafprofile. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    allow_mode_delegation str
    Allow rules to overwrite the policy mode. This must be set if the policy mode is set to enforcement. Field introduced in 18.1.5, 18.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    allowlists Sequence[WafpolicyAllowlistArgs]
    A set of rules which describe conditions under which the request will bypass the waf. This will be processed in the request header phase before any other waf related code. Field introduced in 20.1.3. Allowed with any value in enterprise, enterprise with cloud services edition.
    application_signatures Sequence[WafpolicyApplicationSignatureArgs]
    Application specific signatures. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    auto_update_crs str
    If this flag is set, the system will try to keep the crs version used in this policy up-to-date. If a newer crs object is available on this controller, the system will issue the crs upgrade process for this waf policy. It will not update polices if the current crs version is crs-version-not-applicable. Field introduced in 22.1.3. Allowed with any value in enterprise, enterprise with cloud services edition.
    bypass_static_extensions str
    Enable the functionality to bypass waf for static file extensions. Field introduced in 22.1.1. Allowed with any value in enterprise, enterprise with cloud services edition.
    confidence_overrides Sequence[WafpolicyConfidenceOverrideArgs]
    Configure thresholds for confidence labels. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    configpb_attributes Sequence[WafpolicyConfigpbAttributeArgs]
    Protobuf versioning for config pbs. Field introduced in 21.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    created_by str
    Creator name. Field introduced in 17.2.4. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    crs_overrides Sequence[WafpolicyCrsOverrideArgs]
    Override attributes for crs rules. Field introduced in 20.1.6. Allowed with any value in enterprise, enterprise with cloud services edition.
    description str
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    enable_app_learning str
    Enable application learning for this waf policy. Field introduced in 18.2.3. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    enable_auto_rule_updates str
    Enable application learning based rule updates on the waf profile. Rules will be programmed in dedicated waf learning group. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    enable_regex_learning str
    Enable dynamic regex generation for positive security model rules. This is an experimental feature and shouldn't be used in production. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    failure_mode str
    Waf policy failure mode. This can be 'open' or 'closed'. Enum options - WAF_FAILURE_MODE_OPEN, WAF_FAILURE_MODE_CLOSED. Field introduced in 18.1.2. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    geo_db_ref str
    Geo location mapping database used by this wafpolicy. It is a reference to an object of type geodb. Field introduced in 21.1.1. Allowed with any value in enterprise, enterprise with cloud services edition.
    learning_params Sequence[WafpolicyLearningParamArgs]
    Parameters for tuning application learning. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    markers Sequence[WafpolicyMarkerArgs]
    List of labels to be used for granular rbac. Field introduced in 20.1.5. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    min_confidence str
    Minimum confidence label required for auto rule updates. Enum options - CONFIDENCE_VERY_HIGH, CONFIDENCE_HIGH, CONFIDENCE_PROBABLE, CONFIDENCE_LOW, CONFIDENCE_NONE. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    mode str
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    name str
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    paranoia_level str
    Waf ruleset paranoia mode. This is used to select rules based on the paranoia-level tag. Enum options - WAF_PARANOIA_LEVEL_LOW, WAF_PARANOIA_LEVEL_MEDIUM, WAF_PARANOIA_LEVEL_HIGH, WAF_PARANOIA_LEVEL_EXTREME. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    positive_security_models Sequence[WafpolicyPositiveSecurityModelArgs]
    The positive security model. This is used to describe how the request or parts of the request should look like. It is executed in the request body phase of avi waf. Field introduced in 18.2.3. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    post_crs_groups Sequence[WafpolicyPostCrsGroupArgs]
    Waf rules are categorized in to groups based on their characterization. These groups are created by the user and will be enforced after the crs groups. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    pre_crs_groups Sequence[WafpolicyPreCrsGroupArgs]
    Waf rules are categorized in to groups based on their characterization. These groups are created by the user and will be enforced before the crs groups. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    required_data_files Sequence[WafpolicyRequiredDataFileArgs]
    The data files and types referred in this waf policy. Field introduced in 22.1.3. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    tenant_ref str
    It is a reference to an object of type tenant. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    updated_crs_rules_in_detection_mode str
    While updating crs, the system will make sure that new rules are added in detection mode. It only has an effect if the policy is in enforcement mode. In this case, the update will set new rules into detection mode by adding crs_overrides for the new rules. If this flag is not set or if the policy mode is detection, rules will be added without new crs_overrides. This option is used for the auto_update_crs workflow as well as for the ui based crs update workflow. Field introduced in 22.1.3. Allowed with any value in enterprise, enterprise with cloud services edition.
    uuid str
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    waf_crs_ref str
    Waf core ruleset used for the crs part of this policy. It is a reference to an object of type wafcrs. Field introduced in 18.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    wafpolicy_id str
    wafProfileRef String
    Waf profile for waf policy. It is a reference to an object of type wafprofile. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    allowModeDelegation String
    Allow rules to overwrite the policy mode. This must be set if the policy mode is set to enforcement. Field introduced in 18.1.5, 18.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    allowlists List<Property Map>
    A set of rules which describe conditions under which the request will bypass the waf. This will be processed in the request header phase before any other waf related code. Field introduced in 20.1.3. Allowed with any value in enterprise, enterprise with cloud services edition.
    applicationSignatures List<Property Map>
    Application specific signatures. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    autoUpdateCrs String
    If this flag is set, the system will try to keep the crs version used in this policy up-to-date. If a newer crs object is available on this controller, the system will issue the crs upgrade process for this waf policy. It will not update polices if the current crs version is crs-version-not-applicable. Field introduced in 22.1.3. Allowed with any value in enterprise, enterprise with cloud services edition.
    bypassStaticExtensions String
    Enable the functionality to bypass waf for static file extensions. Field introduced in 22.1.1. Allowed with any value in enterprise, enterprise with cloud services edition.
    confidenceOverrides List<Property Map>
    Configure thresholds for confidence labels. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    configpbAttributes List<Property Map>
    Protobuf versioning for config pbs. Field introduced in 21.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    createdBy String
    Creator name. Field introduced in 17.2.4. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    crsOverrides List<Property Map>
    Override attributes for crs rules. Field introduced in 20.1.6. Allowed with any value in enterprise, enterprise with cloud services edition.
    description String
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    enableAppLearning String
    Enable application learning for this waf policy. Field introduced in 18.2.3. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    enableAutoRuleUpdates String
    Enable application learning based rule updates on the waf profile. Rules will be programmed in dedicated waf learning group. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    enableRegexLearning String
    Enable dynamic regex generation for positive security model rules. This is an experimental feature and shouldn't be used in production. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    failureMode String
    Waf policy failure mode. This can be 'open' or 'closed'. Enum options - WAF_FAILURE_MODE_OPEN, WAF_FAILURE_MODE_CLOSED. Field introduced in 18.1.2. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    geoDbRef String
    Geo location mapping database used by this wafpolicy. It is a reference to an object of type geodb. Field introduced in 21.1.1. Allowed with any value in enterprise, enterprise with cloud services edition.
    learningParams List<Property Map>
    Parameters for tuning application learning. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    markers List<Property Map>
    List of labels to be used for granular rbac. Field introduced in 20.1.5. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    minConfidence String
    Minimum confidence label required for auto rule updates. Enum options - CONFIDENCE_VERY_HIGH, CONFIDENCE_HIGH, CONFIDENCE_PROBABLE, CONFIDENCE_LOW, CONFIDENCE_NONE. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    mode String
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    name String
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    paranoiaLevel String
    Waf ruleset paranoia mode. This is used to select rules based on the paranoia-level tag. Enum options - WAF_PARANOIA_LEVEL_LOW, WAF_PARANOIA_LEVEL_MEDIUM, WAF_PARANOIA_LEVEL_HIGH, WAF_PARANOIA_LEVEL_EXTREME. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    positiveSecurityModels List<Property Map>
    The positive security model. This is used to describe how the request or parts of the request should look like. It is executed in the request body phase of avi waf. Field introduced in 18.2.3. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    postCrsGroups List<Property Map>
    Waf rules are categorized in to groups based on their characterization. These groups are created by the user and will be enforced after the crs groups. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    preCrsGroups List<Property Map>
    Waf rules are categorized in to groups based on their characterization. These groups are created by the user and will be enforced before the crs groups. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    requiredDataFiles List<Property Map>
    The data files and types referred in this waf policy. Field introduced in 22.1.3. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    tenantRef String
    It is a reference to an object of type tenant. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    updatedCrsRulesInDetectionMode String
    While updating crs, the system will make sure that new rules are added in detection mode. It only has an effect if the policy is in enforcement mode. In this case, the update will set new rules into detection mode by adding crs_overrides for the new rules. If this flag is not set or if the policy mode is detection, rules will be added without new crs_overrides. This option is used for the auto_update_crs workflow as well as for the ui based crs update workflow. Field introduced in 22.1.3. Allowed with any value in enterprise, enterprise with cloud services edition.
    uuid String
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    wafCrsRef String
    Waf core ruleset used for the crs part of this policy. It is a reference to an object of type wafcrs. Field introduced in 18.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    wafpolicyId String

    Outputs

    All input properties are implicitly available as output properties. Additionally, the Wafpolicy 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 Wafpolicy Resource

    Get an existing Wafpolicy 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?: WafpolicyState, opts?: CustomResourceOptions): Wafpolicy
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            allow_mode_delegation: Optional[str] = None,
            allowlists: Optional[Sequence[WafpolicyAllowlistArgs]] = None,
            application_signatures: Optional[Sequence[WafpolicyApplicationSignatureArgs]] = None,
            auto_update_crs: Optional[str] = None,
            bypass_static_extensions: Optional[str] = None,
            confidence_overrides: Optional[Sequence[WafpolicyConfidenceOverrideArgs]] = None,
            configpb_attributes: Optional[Sequence[WafpolicyConfigpbAttributeArgs]] = None,
            created_by: Optional[str] = None,
            crs_overrides: Optional[Sequence[WafpolicyCrsOverrideArgs]] = None,
            description: Optional[str] = None,
            enable_app_learning: Optional[str] = None,
            enable_auto_rule_updates: Optional[str] = None,
            enable_regex_learning: Optional[str] = None,
            failure_mode: Optional[str] = None,
            geo_db_ref: Optional[str] = None,
            learning_params: Optional[Sequence[WafpolicyLearningParamArgs]] = None,
            markers: Optional[Sequence[WafpolicyMarkerArgs]] = None,
            min_confidence: Optional[str] = None,
            mode: Optional[str] = None,
            name: Optional[str] = None,
            paranoia_level: Optional[str] = None,
            positive_security_models: Optional[Sequence[WafpolicyPositiveSecurityModelArgs]] = None,
            post_crs_groups: Optional[Sequence[WafpolicyPostCrsGroupArgs]] = None,
            pre_crs_groups: Optional[Sequence[WafpolicyPreCrsGroupArgs]] = None,
            required_data_files: Optional[Sequence[WafpolicyRequiredDataFileArgs]] = None,
            tenant_ref: Optional[str] = None,
            updated_crs_rules_in_detection_mode: Optional[str] = None,
            uuid: Optional[str] = None,
            waf_crs_ref: Optional[str] = None,
            waf_profile_ref: Optional[str] = None,
            wafpolicy_id: Optional[str] = None) -> Wafpolicy
    func GetWafpolicy(ctx *Context, name string, id IDInput, state *WafpolicyState, opts ...ResourceOption) (*Wafpolicy, error)
    public static Wafpolicy Get(string name, Input<string> id, WafpolicyState? state, CustomResourceOptions? opts = null)
    public static Wafpolicy get(String name, Output<String> id, WafpolicyState state, CustomResourceOptions options)
    resources:  _:    type: avi:Wafpolicy    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:
    AllowModeDelegation string
    Allow rules to overwrite the policy mode. This must be set if the policy mode is set to enforcement. Field introduced in 18.1.5, 18.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    Allowlists List<WafpolicyAllowlist>
    A set of rules which describe conditions under which the request will bypass the waf. This will be processed in the request header phase before any other waf related code. Field introduced in 20.1.3. Allowed with any value in enterprise, enterprise with cloud services edition.
    ApplicationSignatures List<WafpolicyApplicationSignature>
    Application specific signatures. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    AutoUpdateCrs string
    If this flag is set, the system will try to keep the crs version used in this policy up-to-date. If a newer crs object is available on this controller, the system will issue the crs upgrade process for this waf policy. It will not update polices if the current crs version is crs-version-not-applicable. Field introduced in 22.1.3. Allowed with any value in enterprise, enterprise with cloud services edition.
    BypassStaticExtensions string
    Enable the functionality to bypass waf for static file extensions. Field introduced in 22.1.1. Allowed with any value in enterprise, enterprise with cloud services edition.
    ConfidenceOverrides List<WafpolicyConfidenceOverride>
    Configure thresholds for confidence labels. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    ConfigpbAttributes List<WafpolicyConfigpbAttribute>
    Protobuf versioning for config pbs. Field introduced in 21.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    CreatedBy string
    Creator name. Field introduced in 17.2.4. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    CrsOverrides List<WafpolicyCrsOverride>
    Override attributes for crs rules. Field introduced in 20.1.6. Allowed with any value in enterprise, enterprise with cloud services edition.
    Description string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    EnableAppLearning string
    Enable application learning for this waf policy. Field introduced in 18.2.3. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    EnableAutoRuleUpdates string
    Enable application learning based rule updates on the waf profile. Rules will be programmed in dedicated waf learning group. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    EnableRegexLearning string
    Enable dynamic regex generation for positive security model rules. This is an experimental feature and shouldn't be used in production. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    FailureMode string
    Waf policy failure mode. This can be 'open' or 'closed'. Enum options - WAF_FAILURE_MODE_OPEN, WAF_FAILURE_MODE_CLOSED. Field introduced in 18.1.2. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    GeoDbRef string
    Geo location mapping database used by this wafpolicy. It is a reference to an object of type geodb. Field introduced in 21.1.1. Allowed with any value in enterprise, enterprise with cloud services edition.
    LearningParams List<WafpolicyLearningParam>
    Parameters for tuning application learning. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    Markers List<WafpolicyMarker>
    List of labels to be used for granular rbac. Field introduced in 20.1.5. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    MinConfidence string
    Minimum confidence label required for auto rule updates. Enum options - CONFIDENCE_VERY_HIGH, CONFIDENCE_HIGH, CONFIDENCE_PROBABLE, CONFIDENCE_LOW, CONFIDENCE_NONE. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    Mode string
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    Name string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    ParanoiaLevel string
    Waf ruleset paranoia mode. This is used to select rules based on the paranoia-level tag. Enum options - WAF_PARANOIA_LEVEL_LOW, WAF_PARANOIA_LEVEL_MEDIUM, WAF_PARANOIA_LEVEL_HIGH, WAF_PARANOIA_LEVEL_EXTREME. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    PositiveSecurityModels List<WafpolicyPositiveSecurityModel>
    The positive security model. This is used to describe how the request or parts of the request should look like. It is executed in the request body phase of avi waf. Field introduced in 18.2.3. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    PostCrsGroups List<WafpolicyPostCrsGroup>
    Waf rules are categorized in to groups based on their characterization. These groups are created by the user and will be enforced after the crs groups. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    PreCrsGroups List<WafpolicyPreCrsGroup>
    Waf rules are categorized in to groups based on their characterization. These groups are created by the user and will be enforced before the crs groups. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    RequiredDataFiles List<WafpolicyRequiredDataFile>
    The data files and types referred in this waf policy. Field introduced in 22.1.3. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    TenantRef string
    It is a reference to an object of type tenant. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    UpdatedCrsRulesInDetectionMode string
    While updating crs, the system will make sure that new rules are added in detection mode. It only has an effect if the policy is in enforcement mode. In this case, the update will set new rules into detection mode by adding crs_overrides for the new rules. If this flag is not set or if the policy mode is detection, rules will be added without new crs_overrides. This option is used for the auto_update_crs workflow as well as for the ui based crs update workflow. Field introduced in 22.1.3. Allowed with any value in enterprise, enterprise with cloud services edition.
    Uuid string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    WafCrsRef string
    Waf core ruleset used for the crs part of this policy. It is a reference to an object of type wafcrs. Field introduced in 18.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    WafProfileRef string
    Waf profile for waf policy. It is a reference to an object of type wafprofile. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    WafpolicyId string
    AllowModeDelegation string
    Allow rules to overwrite the policy mode. This must be set if the policy mode is set to enforcement. Field introduced in 18.1.5, 18.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    Allowlists []WafpolicyAllowlistArgs
    A set of rules which describe conditions under which the request will bypass the waf. This will be processed in the request header phase before any other waf related code. Field introduced in 20.1.3. Allowed with any value in enterprise, enterprise with cloud services edition.
    ApplicationSignatures []WafpolicyApplicationSignatureArgs
    Application specific signatures. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    AutoUpdateCrs string
    If this flag is set, the system will try to keep the crs version used in this policy up-to-date. If a newer crs object is available on this controller, the system will issue the crs upgrade process for this waf policy. It will not update polices if the current crs version is crs-version-not-applicable. Field introduced in 22.1.3. Allowed with any value in enterprise, enterprise with cloud services edition.
    BypassStaticExtensions string
    Enable the functionality to bypass waf for static file extensions. Field introduced in 22.1.1. Allowed with any value in enterprise, enterprise with cloud services edition.
    ConfidenceOverrides []WafpolicyConfidenceOverrideArgs
    Configure thresholds for confidence labels. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    ConfigpbAttributes []WafpolicyConfigpbAttributeArgs
    Protobuf versioning for config pbs. Field introduced in 21.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    CreatedBy string
    Creator name. Field introduced in 17.2.4. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    CrsOverrides []WafpolicyCrsOverrideArgs
    Override attributes for crs rules. Field introduced in 20.1.6. Allowed with any value in enterprise, enterprise with cloud services edition.
    Description string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    EnableAppLearning string
    Enable application learning for this waf policy. Field introduced in 18.2.3. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    EnableAutoRuleUpdates string
    Enable application learning based rule updates on the waf profile. Rules will be programmed in dedicated waf learning group. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    EnableRegexLearning string
    Enable dynamic regex generation for positive security model rules. This is an experimental feature and shouldn't be used in production. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    FailureMode string
    Waf policy failure mode. This can be 'open' or 'closed'. Enum options - WAF_FAILURE_MODE_OPEN, WAF_FAILURE_MODE_CLOSED. Field introduced in 18.1.2. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    GeoDbRef string
    Geo location mapping database used by this wafpolicy. It is a reference to an object of type geodb. Field introduced in 21.1.1. Allowed with any value in enterprise, enterprise with cloud services edition.
    LearningParams []WafpolicyLearningParamArgs
    Parameters for tuning application learning. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    Markers []WafpolicyMarkerArgs
    List of labels to be used for granular rbac. Field introduced in 20.1.5. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    MinConfidence string
    Minimum confidence label required for auto rule updates. Enum options - CONFIDENCE_VERY_HIGH, CONFIDENCE_HIGH, CONFIDENCE_PROBABLE, CONFIDENCE_LOW, CONFIDENCE_NONE. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    Mode string
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    Name string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    ParanoiaLevel string
    Waf ruleset paranoia mode. This is used to select rules based on the paranoia-level tag. Enum options - WAF_PARANOIA_LEVEL_LOW, WAF_PARANOIA_LEVEL_MEDIUM, WAF_PARANOIA_LEVEL_HIGH, WAF_PARANOIA_LEVEL_EXTREME. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    PositiveSecurityModels []WafpolicyPositiveSecurityModelArgs
    The positive security model. This is used to describe how the request or parts of the request should look like. It is executed in the request body phase of avi waf. Field introduced in 18.2.3. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    PostCrsGroups []WafpolicyPostCrsGroupArgs
    Waf rules are categorized in to groups based on their characterization. These groups are created by the user and will be enforced after the crs groups. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    PreCrsGroups []WafpolicyPreCrsGroupArgs
    Waf rules are categorized in to groups based on their characterization. These groups are created by the user and will be enforced before the crs groups. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    RequiredDataFiles []WafpolicyRequiredDataFileArgs
    The data files and types referred in this waf policy. Field introduced in 22.1.3. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    TenantRef string
    It is a reference to an object of type tenant. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    UpdatedCrsRulesInDetectionMode string
    While updating crs, the system will make sure that new rules are added in detection mode. It only has an effect if the policy is in enforcement mode. In this case, the update will set new rules into detection mode by adding crs_overrides for the new rules. If this flag is not set or if the policy mode is detection, rules will be added without new crs_overrides. This option is used for the auto_update_crs workflow as well as for the ui based crs update workflow. Field introduced in 22.1.3. Allowed with any value in enterprise, enterprise with cloud services edition.
    Uuid string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    WafCrsRef string
    Waf core ruleset used for the crs part of this policy. It is a reference to an object of type wafcrs. Field introduced in 18.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    WafProfileRef string
    Waf profile for waf policy. It is a reference to an object of type wafprofile. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    WafpolicyId string
    allowModeDelegation String
    Allow rules to overwrite the policy mode. This must be set if the policy mode is set to enforcement. Field introduced in 18.1.5, 18.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    allowlists List<WafpolicyAllowlist>
    A set of rules which describe conditions under which the request will bypass the waf. This will be processed in the request header phase before any other waf related code. Field introduced in 20.1.3. Allowed with any value in enterprise, enterprise with cloud services edition.
    applicationSignatures List<WafpolicyApplicationSignature>
    Application specific signatures. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    autoUpdateCrs String
    If this flag is set, the system will try to keep the crs version used in this policy up-to-date. If a newer crs object is available on this controller, the system will issue the crs upgrade process for this waf policy. It will not update polices if the current crs version is crs-version-not-applicable. Field introduced in 22.1.3. Allowed with any value in enterprise, enterprise with cloud services edition.
    bypassStaticExtensions String
    Enable the functionality to bypass waf for static file extensions. Field introduced in 22.1.1. Allowed with any value in enterprise, enterprise with cloud services edition.
    confidenceOverrides List<WafpolicyConfidenceOverride>
    Configure thresholds for confidence labels. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    configpbAttributes List<WafpolicyConfigpbAttribute>
    Protobuf versioning for config pbs. Field introduced in 21.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    createdBy String
    Creator name. Field introduced in 17.2.4. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    crsOverrides List<WafpolicyCrsOverride>
    Override attributes for crs rules. Field introduced in 20.1.6. Allowed with any value in enterprise, enterprise with cloud services edition.
    description String
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    enableAppLearning String
    Enable application learning for this waf policy. Field introduced in 18.2.3. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    enableAutoRuleUpdates String
    Enable application learning based rule updates on the waf profile. Rules will be programmed in dedicated waf learning group. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    enableRegexLearning String
    Enable dynamic regex generation for positive security model rules. This is an experimental feature and shouldn't be used in production. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    failureMode String
    Waf policy failure mode. This can be 'open' or 'closed'. Enum options - WAF_FAILURE_MODE_OPEN, WAF_FAILURE_MODE_CLOSED. Field introduced in 18.1.2. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    geoDbRef String
    Geo location mapping database used by this wafpolicy. It is a reference to an object of type geodb. Field introduced in 21.1.1. Allowed with any value in enterprise, enterprise with cloud services edition.
    learningParams List<WafpolicyLearningParam>
    Parameters for tuning application learning. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    markers List<WafpolicyMarker>
    List of labels to be used for granular rbac. Field introduced in 20.1.5. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    minConfidence String
    Minimum confidence label required for auto rule updates. Enum options - CONFIDENCE_VERY_HIGH, CONFIDENCE_HIGH, CONFIDENCE_PROBABLE, CONFIDENCE_LOW, CONFIDENCE_NONE. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    mode String
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    name String
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    paranoiaLevel String
    Waf ruleset paranoia mode. This is used to select rules based on the paranoia-level tag. Enum options - WAF_PARANOIA_LEVEL_LOW, WAF_PARANOIA_LEVEL_MEDIUM, WAF_PARANOIA_LEVEL_HIGH, WAF_PARANOIA_LEVEL_EXTREME. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    positiveSecurityModels List<WafpolicyPositiveSecurityModel>
    The positive security model. This is used to describe how the request or parts of the request should look like. It is executed in the request body phase of avi waf. Field introduced in 18.2.3. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    postCrsGroups List<WafpolicyPostCrsGroup>
    Waf rules are categorized in to groups based on their characterization. These groups are created by the user and will be enforced after the crs groups. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    preCrsGroups List<WafpolicyPreCrsGroup>
    Waf rules are categorized in to groups based on their characterization. These groups are created by the user and will be enforced before the crs groups. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    requiredDataFiles List<WafpolicyRequiredDataFile>
    The data files and types referred in this waf policy. Field introduced in 22.1.3. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    tenantRef String
    It is a reference to an object of type tenant. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    updatedCrsRulesInDetectionMode String
    While updating crs, the system will make sure that new rules are added in detection mode. It only has an effect if the policy is in enforcement mode. In this case, the update will set new rules into detection mode by adding crs_overrides for the new rules. If this flag is not set or if the policy mode is detection, rules will be added without new crs_overrides. This option is used for the auto_update_crs workflow as well as for the ui based crs update workflow. Field introduced in 22.1.3. Allowed with any value in enterprise, enterprise with cloud services edition.
    uuid String
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    wafCrsRef String
    Waf core ruleset used for the crs part of this policy. It is a reference to an object of type wafcrs. Field introduced in 18.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    wafProfileRef String
    Waf profile for waf policy. It is a reference to an object of type wafprofile. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    wafpolicyId String
    allowModeDelegation string
    Allow rules to overwrite the policy mode. This must be set if the policy mode is set to enforcement. Field introduced in 18.1.5, 18.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    allowlists WafpolicyAllowlist[]
    A set of rules which describe conditions under which the request will bypass the waf. This will be processed in the request header phase before any other waf related code. Field introduced in 20.1.3. Allowed with any value in enterprise, enterprise with cloud services edition.
    applicationSignatures WafpolicyApplicationSignature[]
    Application specific signatures. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    autoUpdateCrs string
    If this flag is set, the system will try to keep the crs version used in this policy up-to-date. If a newer crs object is available on this controller, the system will issue the crs upgrade process for this waf policy. It will not update polices if the current crs version is crs-version-not-applicable. Field introduced in 22.1.3. Allowed with any value in enterprise, enterprise with cloud services edition.
    bypassStaticExtensions string
    Enable the functionality to bypass waf for static file extensions. Field introduced in 22.1.1. Allowed with any value in enterprise, enterprise with cloud services edition.
    confidenceOverrides WafpolicyConfidenceOverride[]
    Configure thresholds for confidence labels. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    configpbAttributes WafpolicyConfigpbAttribute[]
    Protobuf versioning for config pbs. Field introduced in 21.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    createdBy string
    Creator name. Field introduced in 17.2.4. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    crsOverrides WafpolicyCrsOverride[]
    Override attributes for crs rules. Field introduced in 20.1.6. Allowed with any value in enterprise, enterprise with cloud services edition.
    description string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    enableAppLearning string
    Enable application learning for this waf policy. Field introduced in 18.2.3. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    enableAutoRuleUpdates string
    Enable application learning based rule updates on the waf profile. Rules will be programmed in dedicated waf learning group. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    enableRegexLearning string
    Enable dynamic regex generation for positive security model rules. This is an experimental feature and shouldn't be used in production. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    failureMode string
    Waf policy failure mode. This can be 'open' or 'closed'. Enum options - WAF_FAILURE_MODE_OPEN, WAF_FAILURE_MODE_CLOSED. Field introduced in 18.1.2. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    geoDbRef string
    Geo location mapping database used by this wafpolicy. It is a reference to an object of type geodb. Field introduced in 21.1.1. Allowed with any value in enterprise, enterprise with cloud services edition.
    learningParams WafpolicyLearningParam[]
    Parameters for tuning application learning. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    markers WafpolicyMarker[]
    List of labels to be used for granular rbac. Field introduced in 20.1.5. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    minConfidence string
    Minimum confidence label required for auto rule updates. Enum options - CONFIDENCE_VERY_HIGH, CONFIDENCE_HIGH, CONFIDENCE_PROBABLE, CONFIDENCE_LOW, CONFIDENCE_NONE. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    mode string
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    name string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    paranoiaLevel string
    Waf ruleset paranoia mode. This is used to select rules based on the paranoia-level tag. Enum options - WAF_PARANOIA_LEVEL_LOW, WAF_PARANOIA_LEVEL_MEDIUM, WAF_PARANOIA_LEVEL_HIGH, WAF_PARANOIA_LEVEL_EXTREME. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    positiveSecurityModels WafpolicyPositiveSecurityModel[]
    The positive security model. This is used to describe how the request or parts of the request should look like. It is executed in the request body phase of avi waf. Field introduced in 18.2.3. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    postCrsGroups WafpolicyPostCrsGroup[]
    Waf rules are categorized in to groups based on their characterization. These groups are created by the user and will be enforced after the crs groups. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    preCrsGroups WafpolicyPreCrsGroup[]
    Waf rules are categorized in to groups based on their characterization. These groups are created by the user and will be enforced before the crs groups. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    requiredDataFiles WafpolicyRequiredDataFile[]
    The data files and types referred in this waf policy. Field introduced in 22.1.3. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    tenantRef string
    It is a reference to an object of type tenant. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    updatedCrsRulesInDetectionMode string
    While updating crs, the system will make sure that new rules are added in detection mode. It only has an effect if the policy is in enforcement mode. In this case, the update will set new rules into detection mode by adding crs_overrides for the new rules. If this flag is not set or if the policy mode is detection, rules will be added without new crs_overrides. This option is used for the auto_update_crs workflow as well as for the ui based crs update workflow. Field introduced in 22.1.3. Allowed with any value in enterprise, enterprise with cloud services edition.
    uuid string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    wafCrsRef string
    Waf core ruleset used for the crs part of this policy. It is a reference to an object of type wafcrs. Field introduced in 18.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    wafProfileRef string
    Waf profile for waf policy. It is a reference to an object of type wafprofile. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    wafpolicyId string
    allow_mode_delegation str
    Allow rules to overwrite the policy mode. This must be set if the policy mode is set to enforcement. Field introduced in 18.1.5, 18.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    allowlists Sequence[WafpolicyAllowlistArgs]
    A set of rules which describe conditions under which the request will bypass the waf. This will be processed in the request header phase before any other waf related code. Field introduced in 20.1.3. Allowed with any value in enterprise, enterprise with cloud services edition.
    application_signatures Sequence[WafpolicyApplicationSignatureArgs]
    Application specific signatures. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    auto_update_crs str
    If this flag is set, the system will try to keep the crs version used in this policy up-to-date. If a newer crs object is available on this controller, the system will issue the crs upgrade process for this waf policy. It will not update polices if the current crs version is crs-version-not-applicable. Field introduced in 22.1.3. Allowed with any value in enterprise, enterprise with cloud services edition.
    bypass_static_extensions str
    Enable the functionality to bypass waf for static file extensions. Field introduced in 22.1.1. Allowed with any value in enterprise, enterprise with cloud services edition.
    confidence_overrides Sequence[WafpolicyConfidenceOverrideArgs]
    Configure thresholds for confidence labels. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    configpb_attributes Sequence[WafpolicyConfigpbAttributeArgs]
    Protobuf versioning for config pbs. Field introduced in 21.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    created_by str
    Creator name. Field introduced in 17.2.4. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    crs_overrides Sequence[WafpolicyCrsOverrideArgs]
    Override attributes for crs rules. Field introduced in 20.1.6. Allowed with any value in enterprise, enterprise with cloud services edition.
    description str
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    enable_app_learning str
    Enable application learning for this waf policy. Field introduced in 18.2.3. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    enable_auto_rule_updates str
    Enable application learning based rule updates on the waf profile. Rules will be programmed in dedicated waf learning group. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    enable_regex_learning str
    Enable dynamic regex generation for positive security model rules. This is an experimental feature and shouldn't be used in production. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    failure_mode str
    Waf policy failure mode. This can be 'open' or 'closed'. Enum options - WAF_FAILURE_MODE_OPEN, WAF_FAILURE_MODE_CLOSED. Field introduced in 18.1.2. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    geo_db_ref str
    Geo location mapping database used by this wafpolicy. It is a reference to an object of type geodb. Field introduced in 21.1.1. Allowed with any value in enterprise, enterprise with cloud services edition.
    learning_params Sequence[WafpolicyLearningParamArgs]
    Parameters for tuning application learning. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    markers Sequence[WafpolicyMarkerArgs]
    List of labels to be used for granular rbac. Field introduced in 20.1.5. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    min_confidence str
    Minimum confidence label required for auto rule updates. Enum options - CONFIDENCE_VERY_HIGH, CONFIDENCE_HIGH, CONFIDENCE_PROBABLE, CONFIDENCE_LOW, CONFIDENCE_NONE. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    mode str
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    name str
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    paranoia_level str
    Waf ruleset paranoia mode. This is used to select rules based on the paranoia-level tag. Enum options - WAF_PARANOIA_LEVEL_LOW, WAF_PARANOIA_LEVEL_MEDIUM, WAF_PARANOIA_LEVEL_HIGH, WAF_PARANOIA_LEVEL_EXTREME. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    positive_security_models Sequence[WafpolicyPositiveSecurityModelArgs]
    The positive security model. This is used to describe how the request or parts of the request should look like. It is executed in the request body phase of avi waf. Field introduced in 18.2.3. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    post_crs_groups Sequence[WafpolicyPostCrsGroupArgs]
    Waf rules are categorized in to groups based on their characterization. These groups are created by the user and will be enforced after the crs groups. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    pre_crs_groups Sequence[WafpolicyPreCrsGroupArgs]
    Waf rules are categorized in to groups based on their characterization. These groups are created by the user and will be enforced before the crs groups. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    required_data_files Sequence[WafpolicyRequiredDataFileArgs]
    The data files and types referred in this waf policy. Field introduced in 22.1.3. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    tenant_ref str
    It is a reference to an object of type tenant. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    updated_crs_rules_in_detection_mode str
    While updating crs, the system will make sure that new rules are added in detection mode. It only has an effect if the policy is in enforcement mode. In this case, the update will set new rules into detection mode by adding crs_overrides for the new rules. If this flag is not set or if the policy mode is detection, rules will be added without new crs_overrides. This option is used for the auto_update_crs workflow as well as for the ui based crs update workflow. Field introduced in 22.1.3. Allowed with any value in enterprise, enterprise with cloud services edition.
    uuid str
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    waf_crs_ref str
    Waf core ruleset used for the crs part of this policy. It is a reference to an object of type wafcrs. Field introduced in 18.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    waf_profile_ref str
    Waf profile for waf policy. It is a reference to an object of type wafprofile. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    wafpolicy_id str
    allowModeDelegation String
    Allow rules to overwrite the policy mode. This must be set if the policy mode is set to enforcement. Field introduced in 18.1.5, 18.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    allowlists List<Property Map>
    A set of rules which describe conditions under which the request will bypass the waf. This will be processed in the request header phase before any other waf related code. Field introduced in 20.1.3. Allowed with any value in enterprise, enterprise with cloud services edition.
    applicationSignatures List<Property Map>
    Application specific signatures. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    autoUpdateCrs String
    If this flag is set, the system will try to keep the crs version used in this policy up-to-date. If a newer crs object is available on this controller, the system will issue the crs upgrade process for this waf policy. It will not update polices if the current crs version is crs-version-not-applicable. Field introduced in 22.1.3. Allowed with any value in enterprise, enterprise with cloud services edition.
    bypassStaticExtensions String
    Enable the functionality to bypass waf for static file extensions. Field introduced in 22.1.1. Allowed with any value in enterprise, enterprise with cloud services edition.
    confidenceOverrides List<Property Map>
    Configure thresholds for confidence labels. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    configpbAttributes List<Property Map>
    Protobuf versioning for config pbs. Field introduced in 21.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    createdBy String
    Creator name. Field introduced in 17.2.4. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    crsOverrides List<Property Map>
    Override attributes for crs rules. Field introduced in 20.1.6. Allowed with any value in enterprise, enterprise with cloud services edition.
    description String
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    enableAppLearning String
    Enable application learning for this waf policy. Field introduced in 18.2.3. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    enableAutoRuleUpdates String
    Enable application learning based rule updates on the waf profile. Rules will be programmed in dedicated waf learning group. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    enableRegexLearning String
    Enable dynamic regex generation for positive security model rules. This is an experimental feature and shouldn't be used in production. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    failureMode String
    Waf policy failure mode. This can be 'open' or 'closed'. Enum options - WAF_FAILURE_MODE_OPEN, WAF_FAILURE_MODE_CLOSED. Field introduced in 18.1.2. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    geoDbRef String
    Geo location mapping database used by this wafpolicy. It is a reference to an object of type geodb. Field introduced in 21.1.1. Allowed with any value in enterprise, enterprise with cloud services edition.
    learningParams List<Property Map>
    Parameters for tuning application learning. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    markers List<Property Map>
    List of labels to be used for granular rbac. Field introduced in 20.1.5. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    minConfidence String
    Minimum confidence label required for auto rule updates. Enum options - CONFIDENCE_VERY_HIGH, CONFIDENCE_HIGH, CONFIDENCE_PROBABLE, CONFIDENCE_LOW, CONFIDENCE_NONE. Field introduced in 20.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    mode String
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    name String
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    paranoiaLevel String
    Waf ruleset paranoia mode. This is used to select rules based on the paranoia-level tag. Enum options - WAF_PARANOIA_LEVEL_LOW, WAF_PARANOIA_LEVEL_MEDIUM, WAF_PARANOIA_LEVEL_HIGH, WAF_PARANOIA_LEVEL_EXTREME. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    positiveSecurityModels List<Property Map>
    The positive security model. This is used to describe how the request or parts of the request should look like. It is executed in the request body phase of avi waf. Field introduced in 18.2.3. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    postCrsGroups List<Property Map>
    Waf rules are categorized in to groups based on their characterization. These groups are created by the user and will be enforced after the crs groups. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    preCrsGroups List<Property Map>
    Waf rules are categorized in to groups based on their characterization. These groups are created by the user and will be enforced before the crs groups. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    requiredDataFiles List<Property Map>
    The data files and types referred in this waf policy. Field introduced in 22.1.3. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    tenantRef String
    It is a reference to an object of type tenant. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    updatedCrsRulesInDetectionMode String
    While updating crs, the system will make sure that new rules are added in detection mode. It only has an effect if the policy is in enforcement mode. In this case, the update will set new rules into detection mode by adding crs_overrides for the new rules. If this flag is not set or if the policy mode is detection, rules will be added without new crs_overrides. This option is used for the auto_update_crs workflow as well as for the ui based crs update workflow. Field introduced in 22.1.3. Allowed with any value in enterprise, enterprise with cloud services edition.
    uuid String
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    wafCrsRef String
    Waf core ruleset used for the crs part of this policy. It is a reference to an object of type wafcrs. Field introduced in 18.1.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    wafProfileRef String
    Waf profile for waf policy. It is a reference to an object of type wafprofile. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    wafpolicyId String

    Supporting Types

    WafpolicyAllowlist, WafpolicyAllowlistArgs

    WafpolicyAllowlistRule, WafpolicyAllowlistRuleArgs

    Actions List<string>
    Index string
    Matches List<WafpolicyAllowlistRuleMatch>
    Name string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    Description string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    Enable string
    SamplingPercent string
    Actions []string
    Index string
    Matches []WafpolicyAllowlistRuleMatch
    Name string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    Description string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    Enable string
    SamplingPercent string
    actions List<String>
    index String
    matches List<WafpolicyAllowlistRuleMatch>
    name String
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    description String
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    enable String
    samplingPercent String
    actions string[]
    index string
    matches WafpolicyAllowlistRuleMatch[]
    name string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    description string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    enable string
    samplingPercent string
    actions Sequence[str]
    index str
    matches Sequence[WafpolicyAllowlistRuleMatch]
    name str
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    description str
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    enable str
    sampling_percent str
    actions List<String>
    index String
    matches List<Property Map>
    name String
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    description String
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    enable String
    samplingPercent String

    WafpolicyAllowlistRuleMatch, WafpolicyAllowlistRuleMatchArgs

    bot_detection_results Sequence[WafpolicyAllowlistRuleMatchBotDetectionResult]
    client_ips Sequence[WafpolicyAllowlistRuleMatchClientIp]
    cookies Sequence[WafpolicyAllowlistRuleMatchCookie]
    geo_matches Sequence[WafpolicyAllowlistRuleMatchGeoMatch]
    hdrs Sequence[WafpolicyAllowlistRuleMatchHdr]
    host_hdrs Sequence[WafpolicyAllowlistRuleMatchHostHdr]
    ip_reputation_types Sequence[WafpolicyAllowlistRuleMatchIpReputationType]
    methods Sequence[WafpolicyAllowlistRuleMatchMethod]
    paths Sequence[WafpolicyAllowlistRuleMatchPath]
    protocols Sequence[WafpolicyAllowlistRuleMatchProtocol]
    queries Sequence[WafpolicyAllowlistRuleMatchQuery]
    source_ips Sequence[WafpolicyAllowlistRuleMatchSourceIp]
    tls_fingerprint_matches Sequence[WafpolicyAllowlistRuleMatchTlsFingerprintMatch]
    versions Sequence[WafpolicyAllowlistRuleMatchVersion]
    vs_ports Sequence[WafpolicyAllowlistRuleMatchVsPort]

    WafpolicyAllowlistRuleMatchBotDetectionResult, WafpolicyAllowlistRuleMatchBotDetectionResultArgs

    WafpolicyAllowlistRuleMatchBotDetectionResultClassification, WafpolicyAllowlistRuleMatchBotDetectionResultClassificationArgs

    Type string
    UserDefinedType string
    Type string
    UserDefinedType string
    type String
    userDefinedType String
    type string
    userDefinedType string
    type String
    userDefinedType String

    WafpolicyAllowlistRuleMatchClientIp, WafpolicyAllowlistRuleMatchClientIpArgs

    WafpolicyAllowlistRuleMatchClientIpAddr, WafpolicyAllowlistRuleMatchClientIpAddrArgs

    Addr string
    Type string
    Addr string
    Type string
    addr String
    type String
    addr string
    type string
    addr str
    type str
    addr String
    type String

    WafpolicyAllowlistRuleMatchClientIpPrefix, WafpolicyAllowlistRuleMatchClientIpPrefixArgs

    WafpolicyAllowlistRuleMatchClientIpPrefixIpAddr, WafpolicyAllowlistRuleMatchClientIpPrefixIpAddrArgs

    Addr string
    Type string
    Addr string
    Type string
    addr String
    type String
    addr string
    type string
    addr str
    type str
    addr String
    type String

    WafpolicyAllowlistRuleMatchClientIpRange, WafpolicyAllowlistRuleMatchClientIpRangeArgs

    WafpolicyAllowlistRuleMatchClientIpRangeBegin, WafpolicyAllowlistRuleMatchClientIpRangeBeginArgs

    Addr string
    Type string
    Addr string
    Type string
    addr String
    type String
    addr string
    type string
    addr str
    type str
    addr String
    type String

    WafpolicyAllowlistRuleMatchClientIpRangeEnd, WafpolicyAllowlistRuleMatchClientIpRangeEndArgs

    Addr string
    Type string
    Addr string
    Type string
    addr String
    type String
    addr string
    type string
    addr str
    type str
    addr String
    type String

    WafpolicyAllowlistRuleMatchCookie, WafpolicyAllowlistRuleMatchCookieArgs

    MatchCriteria string
    Name string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    MatchCase string
    Value string
    MatchCriteria string
    Name string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    MatchCase string
    Value string
    matchCriteria String
    name String
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    matchCase String
    value String
    matchCriteria string
    name string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    matchCase string
    value string
    match_criteria str
    name str
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    match_case str
    value str
    matchCriteria String
    name String
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    matchCase String
    value String

    WafpolicyAllowlistRuleMatchGeoMatch, WafpolicyAllowlistRuleMatchGeoMatchArgs

    Attribute string
    MatchOperation string
    Values List<string>
    Attribute string
    MatchOperation string
    Values []string
    attribute String
    matchOperation String
    values List<String>
    attribute string
    matchOperation string
    values string[]
    attribute str
    match_operation str
    values Sequence[str]
    attribute String
    matchOperation String
    values List<String>

    WafpolicyAllowlistRuleMatchHdr, WafpolicyAllowlistRuleMatchHdrArgs

    Hdr string
    MatchCriteria string
    MatchCase string
    StringGroupRefs List<string>
    Values List<string>
    Hdr string
    MatchCriteria string
    MatchCase string
    StringGroupRefs []string
    Values []string
    hdr String
    matchCriteria String
    matchCase String
    stringGroupRefs List<String>
    values List<String>
    hdr string
    matchCriteria string
    matchCase string
    stringGroupRefs string[]
    values string[]
    hdr str
    match_criteria str
    match_case str
    string_group_refs Sequence[str]
    values Sequence[str]
    hdr String
    matchCriteria String
    matchCase String
    stringGroupRefs List<String>
    values List<String>

    WafpolicyAllowlistRuleMatchHostHdr, WafpolicyAllowlistRuleMatchHostHdrArgs

    MatchCriteria string
    MatchCase string
    Values List<string>
    MatchCriteria string
    MatchCase string
    Values []string
    matchCriteria String
    matchCase String
    values List<String>
    matchCriteria string
    matchCase string
    values string[]
    match_criteria str
    match_case str
    values Sequence[str]
    matchCriteria String
    matchCase String
    values List<String>

    WafpolicyAllowlistRuleMatchIpReputationType, WafpolicyAllowlistRuleMatchIpReputationTypeArgs

    MatchOperation string
    ReputationTypes List<string>
    matchOperation String
    reputationTypes List<String>
    matchOperation String
    reputationTypes List<String>

    WafpolicyAllowlistRuleMatchMethod, WafpolicyAllowlistRuleMatchMethodArgs

    MatchCriteria string
    Methods List<string>
    MatchCriteria string
    Methods []string
    matchCriteria String
    methods List<String>
    matchCriteria string
    methods string[]
    match_criteria str
    methods Sequence[str]
    matchCriteria String
    methods List<String>

    WafpolicyAllowlistRuleMatchPath, WafpolicyAllowlistRuleMatchPathArgs

    MatchCriteria string
    MatchCase string
    MatchDecodedString string
    MatchStrs List<string>
    StringGroupRefs List<string>
    matchCriteria String
    matchCase String
    matchDecodedString String
    matchStrs List<String>
    stringGroupRefs List<String>
    matchCriteria String
    matchCase String
    matchDecodedString String
    matchStrs List<String>
    stringGroupRefs List<String>

    WafpolicyAllowlistRuleMatchProtocol, WafpolicyAllowlistRuleMatchProtocolArgs

    WafpolicyAllowlistRuleMatchQuery, WafpolicyAllowlistRuleMatchQueryArgs

    MatchCriteria string
    MatchCase string
    MatchDecodedString string
    MatchStrs List<string>
    StringGroupRefs List<string>
    matchCriteria String
    matchCase String
    matchDecodedString String
    matchStrs List<String>
    stringGroupRefs List<String>
    matchCriteria String
    matchCase String
    matchDecodedString String
    matchStrs List<String>
    stringGroupRefs List<String>

    WafpolicyAllowlistRuleMatchSourceIp, WafpolicyAllowlistRuleMatchSourceIpArgs

    WafpolicyAllowlistRuleMatchSourceIpAddr, WafpolicyAllowlistRuleMatchSourceIpAddrArgs

    Addr string
    Type string
    Addr string
    Type string
    addr String
    type String
    addr string
    type string
    addr str
    type str
    addr String
    type String

    WafpolicyAllowlistRuleMatchSourceIpPrefix, WafpolicyAllowlistRuleMatchSourceIpPrefixArgs

    WafpolicyAllowlistRuleMatchSourceIpPrefixIpAddr, WafpolicyAllowlistRuleMatchSourceIpPrefixIpAddrArgs

    Addr string
    Type string
    Addr string
    Type string
    addr String
    type String
    addr string
    type string
    addr str
    type str
    addr String
    type String

    WafpolicyAllowlistRuleMatchSourceIpRange, WafpolicyAllowlistRuleMatchSourceIpRangeArgs

    WafpolicyAllowlistRuleMatchSourceIpRangeBegin, WafpolicyAllowlistRuleMatchSourceIpRangeBeginArgs

    Addr string
    Type string
    Addr string
    Type string
    addr String
    type String
    addr string
    type string
    addr str
    type str
    addr String
    type String

    WafpolicyAllowlistRuleMatchSourceIpRangeEnd, WafpolicyAllowlistRuleMatchSourceIpRangeEndArgs

    Addr string
    Type string
    Addr string
    Type string
    addr String
    type String
    addr string
    type string
    addr str
    type str
    addr String
    type String

    WafpolicyAllowlistRuleMatchTlsFingerprintMatch, WafpolicyAllowlistRuleMatchTlsFingerprintMatchArgs

    MatchOperation string
    Fingerprints List<string>
    StringGroupRefs List<string>
    matchOperation String
    fingerprints List<String>
    stringGroupRefs List<String>
    match_operation str
    fingerprints Sequence[str]
    string_group_refs Sequence[str]
    matchOperation String
    fingerprints List<String>
    stringGroupRefs List<String>

    WafpolicyAllowlistRuleMatchVersion, WafpolicyAllowlistRuleMatchVersionArgs

    MatchCriteria string
    Versions List<string>
    MatchCriteria string
    Versions []string
    matchCriteria String
    versions List<String>
    matchCriteria string
    versions string[]
    match_criteria str
    versions Sequence[str]
    matchCriteria String
    versions List<String>

    WafpolicyAllowlistRuleMatchVsPort, WafpolicyAllowlistRuleMatchVsPortArgs

    MatchCriteria string
    Ports List<double>
    MatchCriteria string
    Ports []float64
    matchCriteria String
    ports List<Double>
    matchCriteria string
    ports number[]
    match_criteria str
    ports Sequence[float]
    matchCriteria String
    ports List<Number>

    WafpolicyApplicationSignature, WafpolicyApplicationSignatureArgs

    WafpolicyApplicationSignatureResolvedRule, WafpolicyApplicationSignatureResolvedRuleArgs

    Index string
    Rule string
    Enable string
    ExcludeLists List<WafpolicyApplicationSignatureResolvedRuleExcludeList>
    IsSensitive string
    Mode string
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    Name string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    ParanoiaLevel string
    Waf ruleset paranoia mode. This is used to select rules based on the paranoia-level tag. Enum options - WAF_PARANOIA_LEVEL_LOW, WAF_PARANOIA_LEVEL_MEDIUM, WAF_PARANOIA_LEVEL_HIGH, WAF_PARANOIA_LEVEL_EXTREME. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    Phase string
    RuleId string
    Tags List<string>
    Index string
    Rule string
    Enable string
    ExcludeLists []WafpolicyApplicationSignatureResolvedRuleExcludeList
    IsSensitive string
    Mode string
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    Name string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    ParanoiaLevel string
    Waf ruleset paranoia mode. This is used to select rules based on the paranoia-level tag. Enum options - WAF_PARANOIA_LEVEL_LOW, WAF_PARANOIA_LEVEL_MEDIUM, WAF_PARANOIA_LEVEL_HIGH, WAF_PARANOIA_LEVEL_EXTREME. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    Phase string
    RuleId string
    Tags []string
    index String
    rule String
    enable String
    excludeLists List<WafpolicyApplicationSignatureResolvedRuleExcludeList>
    isSensitive String
    mode String
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    name String
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    paranoiaLevel String
    Waf ruleset paranoia mode. This is used to select rules based on the paranoia-level tag. Enum options - WAF_PARANOIA_LEVEL_LOW, WAF_PARANOIA_LEVEL_MEDIUM, WAF_PARANOIA_LEVEL_HIGH, WAF_PARANOIA_LEVEL_EXTREME. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    phase String
    ruleId String
    tags List<String>
    index string
    rule string
    enable string
    excludeLists WafpolicyApplicationSignatureResolvedRuleExcludeList[]
    isSensitive string
    mode string
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    name string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    paranoiaLevel string
    Waf ruleset paranoia mode. This is used to select rules based on the paranoia-level tag. Enum options - WAF_PARANOIA_LEVEL_LOW, WAF_PARANOIA_LEVEL_MEDIUM, WAF_PARANOIA_LEVEL_HIGH, WAF_PARANOIA_LEVEL_EXTREME. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    phase string
    ruleId string
    tags string[]
    index str
    rule str
    enable str
    exclude_lists Sequence[WafpolicyApplicationSignatureResolvedRuleExcludeList]
    is_sensitive str
    mode str
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    name str
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    paranoia_level str
    Waf ruleset paranoia mode. This is used to select rules based on the paranoia-level tag. Enum options - WAF_PARANOIA_LEVEL_LOW, WAF_PARANOIA_LEVEL_MEDIUM, WAF_PARANOIA_LEVEL_HIGH, WAF_PARANOIA_LEVEL_EXTREME. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    phase str
    rule_id str
    tags Sequence[str]
    index String
    rule String
    enable String
    excludeLists List<Property Map>
    isSensitive String
    mode String
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    name String
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    paranoiaLevel String
    Waf ruleset paranoia mode. This is used to select rules based on the paranoia-level tag. Enum options - WAF_PARANOIA_LEVEL_LOW, WAF_PARANOIA_LEVEL_MEDIUM, WAF_PARANOIA_LEVEL_HIGH, WAF_PARANOIA_LEVEL_EXTREME. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    phase String
    ruleId String
    tags List<String>

    WafpolicyApplicationSignatureResolvedRuleExcludeList, WafpolicyApplicationSignatureResolvedRuleExcludeListArgs

    clientSubnets List<Property Map>
    description String
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    matchElement String
    matchElementCriterias List<Property Map>
    uriMatchCriterias List<Property Map>
    uriPath String

    WafpolicyApplicationSignatureResolvedRuleExcludeListClientSubnet, WafpolicyApplicationSignatureResolvedRuleExcludeListClientSubnetArgs

    WafpolicyApplicationSignatureResolvedRuleExcludeListClientSubnetIpAddr, WafpolicyApplicationSignatureResolvedRuleExcludeListClientSubnetIpAddrArgs

    Addr string
    Type string
    Addr string
    Type string
    addr String
    type String
    addr string
    type string
    addr str
    type str
    addr String
    type String

    WafpolicyApplicationSignatureResolvedRuleExcludeListMatchElementCriteria, WafpolicyApplicationSignatureResolvedRuleExcludeListMatchElementCriteriaArgs

    MatchCase string
    MatchOp string
    MatchCase string
    MatchOp string
    matchCase String
    matchOp String
    matchCase string
    matchOp string
    matchCase String
    matchOp String

    WafpolicyApplicationSignatureResolvedRuleExcludeListUriMatchCriteria, WafpolicyApplicationSignatureResolvedRuleExcludeListUriMatchCriteriaArgs

    MatchCase string
    MatchOp string
    MatchCase string
    MatchOp string
    matchCase String
    matchOp String
    matchCase string
    matchOp string
    matchCase String
    matchOp String

    WafpolicyApplicationSignatureRuleOverride, WafpolicyApplicationSignatureRuleOverrideArgs

    RuleId string
    Enable string
    ExcludeLists List<WafpolicyApplicationSignatureRuleOverrideExcludeList>
    Mode string
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    RuleId string
    Enable string
    ExcludeLists []WafpolicyApplicationSignatureRuleOverrideExcludeList
    Mode string
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    ruleId String
    enable String
    excludeLists List<WafpolicyApplicationSignatureRuleOverrideExcludeList>
    mode String
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    ruleId string
    enable string
    excludeLists WafpolicyApplicationSignatureRuleOverrideExcludeList[]
    mode string
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    rule_id str
    enable str
    exclude_lists Sequence[WafpolicyApplicationSignatureRuleOverrideExcludeList]
    mode str
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    ruleId String
    enable String
    excludeLists List<Property Map>
    mode String
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.

    WafpolicyApplicationSignatureRuleOverrideExcludeList, WafpolicyApplicationSignatureRuleOverrideExcludeListArgs

    clientSubnets List<Property Map>
    description String
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    matchElement String
    matchElementCriterias List<Property Map>
    uriMatchCriterias List<Property Map>
    uriPath String

    WafpolicyApplicationSignatureRuleOverrideExcludeListClientSubnet, WafpolicyApplicationSignatureRuleOverrideExcludeListClientSubnetArgs

    WafpolicyApplicationSignatureRuleOverrideExcludeListClientSubnetIpAddr, WafpolicyApplicationSignatureRuleOverrideExcludeListClientSubnetIpAddrArgs

    Addr string
    Type string
    Addr string
    Type string
    addr String
    type String
    addr string
    type string
    addr str
    type str
    addr String
    type String

    WafpolicyApplicationSignatureRuleOverrideExcludeListMatchElementCriteria, WafpolicyApplicationSignatureRuleOverrideExcludeListMatchElementCriteriaArgs

    MatchCase string
    MatchOp string
    MatchCase string
    MatchOp string
    matchCase String
    matchOp String
    matchCase string
    matchOp string
    matchCase String
    matchOp String

    WafpolicyApplicationSignatureRuleOverrideExcludeListUriMatchCriteria, WafpolicyApplicationSignatureRuleOverrideExcludeListUriMatchCriteriaArgs

    MatchCase string
    MatchOp string
    MatchCase string
    MatchOp string
    matchCase String
    matchOp String
    matchCase string
    matchOp string
    matchCase String
    matchOp String

    WafpolicyConfidenceOverride, WafpolicyConfidenceOverrideArgs

    WafpolicyConfigpbAttribute, WafpolicyConfigpbAttributeArgs

    Version string
    Version string
    version String
    version string
    version String

    WafpolicyCrsOverride, WafpolicyCrsOverrideArgs

    Name string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    Enable string
    ExcludeLists List<WafpolicyCrsOverrideExcludeList>
    Mode string
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    RuleOverrides List<WafpolicyCrsOverrideRuleOverride>
    Name string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    Enable string
    ExcludeLists []WafpolicyCrsOverrideExcludeList
    Mode string
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    RuleOverrides []WafpolicyCrsOverrideRuleOverride
    name String
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    enable String
    excludeLists List<WafpolicyCrsOverrideExcludeList>
    mode String
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    ruleOverrides List<WafpolicyCrsOverrideRuleOverride>
    name string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    enable string
    excludeLists WafpolicyCrsOverrideExcludeList[]
    mode string
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    ruleOverrides WafpolicyCrsOverrideRuleOverride[]
    name str
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    enable str
    exclude_lists Sequence[WafpolicyCrsOverrideExcludeList]
    mode str
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    rule_overrides Sequence[WafpolicyCrsOverrideRuleOverride]
    name String
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    enable String
    excludeLists List<Property Map>
    mode String
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    ruleOverrides List<Property Map>

    WafpolicyCrsOverrideExcludeList, WafpolicyCrsOverrideExcludeListArgs

    clientSubnets List<Property Map>
    description String
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    matchElement String
    matchElementCriterias List<Property Map>
    uriMatchCriterias List<Property Map>
    uriPath String

    WafpolicyCrsOverrideExcludeListClientSubnet, WafpolicyCrsOverrideExcludeListClientSubnetArgs

    WafpolicyCrsOverrideExcludeListClientSubnetIpAddr, WafpolicyCrsOverrideExcludeListClientSubnetIpAddrArgs

    Addr string
    Type string
    Addr string
    Type string
    addr String
    type String
    addr string
    type string
    addr str
    type str
    addr String
    type String

    WafpolicyCrsOverrideExcludeListMatchElementCriteria, WafpolicyCrsOverrideExcludeListMatchElementCriteriaArgs

    MatchCase string
    MatchOp string
    MatchCase string
    MatchOp string
    matchCase String
    matchOp String
    matchCase string
    matchOp string
    matchCase String
    matchOp String

    WafpolicyCrsOverrideExcludeListUriMatchCriteria, WafpolicyCrsOverrideExcludeListUriMatchCriteriaArgs

    MatchCase string
    MatchOp string
    MatchCase string
    MatchOp string
    matchCase String
    matchOp String
    matchCase string
    matchOp string
    matchCase String
    matchOp String

    WafpolicyCrsOverrideRuleOverride, WafpolicyCrsOverrideRuleOverrideArgs

    RuleId string
    Enable string
    ExcludeLists List<WafpolicyCrsOverrideRuleOverrideExcludeList>
    Mode string
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    RuleId string
    Enable string
    ExcludeLists []WafpolicyCrsOverrideRuleOverrideExcludeList
    Mode string
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    ruleId String
    enable String
    excludeLists List<WafpolicyCrsOverrideRuleOverrideExcludeList>
    mode String
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    ruleId string
    enable string
    excludeLists WafpolicyCrsOverrideRuleOverrideExcludeList[]
    mode string
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    rule_id str
    enable str
    exclude_lists Sequence[WafpolicyCrsOverrideRuleOverrideExcludeList]
    mode str
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    ruleId String
    enable String
    excludeLists List<Property Map>
    mode String
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.

    WafpolicyCrsOverrideRuleOverrideExcludeList, WafpolicyCrsOverrideRuleOverrideExcludeListArgs

    clientSubnets List<Property Map>
    description String
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    matchElement String
    matchElementCriterias List<Property Map>
    uriMatchCriterias List<Property Map>
    uriPath String

    WafpolicyCrsOverrideRuleOverrideExcludeListClientSubnet, WafpolicyCrsOverrideRuleOverrideExcludeListClientSubnetArgs

    WafpolicyCrsOverrideRuleOverrideExcludeListClientSubnetIpAddr, WafpolicyCrsOverrideRuleOverrideExcludeListClientSubnetIpAddrArgs

    Addr string
    Type string
    Addr string
    Type string
    addr String
    type String
    addr string
    type string
    addr str
    type str
    addr String
    type String

    WafpolicyCrsOverrideRuleOverrideExcludeListMatchElementCriteria, WafpolicyCrsOverrideRuleOverrideExcludeListMatchElementCriteriaArgs

    MatchCase string
    MatchOp string
    MatchCase string
    MatchOp string
    matchCase String
    matchOp String
    matchCase string
    matchOp string
    matchCase String
    matchOp String

    WafpolicyCrsOverrideRuleOverrideExcludeListUriMatchCriteria, WafpolicyCrsOverrideRuleOverrideExcludeListUriMatchCriteriaArgs

    MatchCase string
    MatchOp string
    MatchCase string
    MatchOp string
    matchCase String
    matchOp String
    matchCase string
    matchOp string
    matchCase String
    matchOp String

    WafpolicyLearningParam, WafpolicyLearningParamArgs

    WafpolicyLearningParamLearnFromBot, WafpolicyLearningParamLearnFromBotArgs

    WafpolicyLearningParamLearnFromBotClassification, WafpolicyLearningParamLearnFromBotClassificationArgs

    Type string
    UserDefinedType string
    Type string
    UserDefinedType string
    type String
    userDefinedType String
    type string
    userDefinedType string
    type String
    userDefinedType String

    WafpolicyMarker, WafpolicyMarkerArgs

    Key string
    Values List<string>
    Key string
    Values []string
    key String
    values List<String>
    key string
    values string[]
    key str
    values Sequence[str]
    key String
    values List<String>

    WafpolicyPositiveSecurityModel, WafpolicyPositiveSecurityModelArgs

    GroupRefs List<string>
    GroupRefs []string
    groupRefs List<String>
    groupRefs string[]
    group_refs Sequence[str]
    groupRefs List<String>

    WafpolicyPostCrsGroup, WafpolicyPostCrsGroupArgs

    Index string
    Name string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    Enable string
    ExcludeLists List<WafpolicyPostCrsGroupExcludeList>
    Rules List<WafpolicyPostCrsGroupRule>
    Index string
    Name string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    Enable string
    ExcludeLists []WafpolicyPostCrsGroupExcludeList
    Rules []WafpolicyPostCrsGroupRule
    index String
    name String
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    enable String
    excludeLists List<WafpolicyPostCrsGroupExcludeList>
    rules List<WafpolicyPostCrsGroupRule>
    index string
    name string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    enable string
    excludeLists WafpolicyPostCrsGroupExcludeList[]
    rules WafpolicyPostCrsGroupRule[]
    index str
    name str
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    enable str
    exclude_lists Sequence[WafpolicyPostCrsGroupExcludeList]
    rules Sequence[WafpolicyPostCrsGroupRule]
    index String
    name String
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    enable String
    excludeLists List<Property Map>
    rules List<Property Map>

    WafpolicyPostCrsGroupExcludeList, WafpolicyPostCrsGroupExcludeListArgs

    clientSubnets List<Property Map>
    description String
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    matchElement String
    matchElementCriterias List<Property Map>
    uriMatchCriterias List<Property Map>
    uriPath String

    WafpolicyPostCrsGroupExcludeListClientSubnet, WafpolicyPostCrsGroupExcludeListClientSubnetArgs

    WafpolicyPostCrsGroupExcludeListClientSubnetIpAddr, WafpolicyPostCrsGroupExcludeListClientSubnetIpAddrArgs

    Addr string
    Type string
    Addr string
    Type string
    addr String
    type String
    addr string
    type string
    addr str
    type str
    addr String
    type String

    WafpolicyPostCrsGroupExcludeListMatchElementCriteria, WafpolicyPostCrsGroupExcludeListMatchElementCriteriaArgs

    MatchCase string
    MatchOp string
    MatchCase string
    MatchOp string
    matchCase String
    matchOp String
    matchCase string
    matchOp string
    matchCase String
    matchOp String

    WafpolicyPostCrsGroupExcludeListUriMatchCriteria, WafpolicyPostCrsGroupExcludeListUriMatchCriteriaArgs

    MatchCase string
    MatchOp string
    MatchCase string
    MatchOp string
    matchCase String
    matchOp String
    matchCase string
    matchOp string
    matchCase String
    matchOp String

    WafpolicyPostCrsGroupRule, WafpolicyPostCrsGroupRuleArgs

    Index string
    Rule string
    Enable string
    ExcludeLists List<WafpolicyPostCrsGroupRuleExcludeList>
    IsSensitive string
    Mode string
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    Name string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    ParanoiaLevel string
    Waf ruleset paranoia mode. This is used to select rules based on the paranoia-level tag. Enum options - WAF_PARANOIA_LEVEL_LOW, WAF_PARANOIA_LEVEL_MEDIUM, WAF_PARANOIA_LEVEL_HIGH, WAF_PARANOIA_LEVEL_EXTREME. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    Phase string
    RuleId string
    Tags List<string>
    Index string
    Rule string
    Enable string
    ExcludeLists []WafpolicyPostCrsGroupRuleExcludeList
    IsSensitive string
    Mode string
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    Name string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    ParanoiaLevel string
    Waf ruleset paranoia mode. This is used to select rules based on the paranoia-level tag. Enum options - WAF_PARANOIA_LEVEL_LOW, WAF_PARANOIA_LEVEL_MEDIUM, WAF_PARANOIA_LEVEL_HIGH, WAF_PARANOIA_LEVEL_EXTREME. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    Phase string
    RuleId string
    Tags []string
    index String
    rule String
    enable String
    excludeLists List<WafpolicyPostCrsGroupRuleExcludeList>
    isSensitive String
    mode String
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    name String
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    paranoiaLevel String
    Waf ruleset paranoia mode. This is used to select rules based on the paranoia-level tag. Enum options - WAF_PARANOIA_LEVEL_LOW, WAF_PARANOIA_LEVEL_MEDIUM, WAF_PARANOIA_LEVEL_HIGH, WAF_PARANOIA_LEVEL_EXTREME. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    phase String
    ruleId String
    tags List<String>
    index string
    rule string
    enable string
    excludeLists WafpolicyPostCrsGroupRuleExcludeList[]
    isSensitive string
    mode string
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    name string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    paranoiaLevel string
    Waf ruleset paranoia mode. This is used to select rules based on the paranoia-level tag. Enum options - WAF_PARANOIA_LEVEL_LOW, WAF_PARANOIA_LEVEL_MEDIUM, WAF_PARANOIA_LEVEL_HIGH, WAF_PARANOIA_LEVEL_EXTREME. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    phase string
    ruleId string
    tags string[]
    index str
    rule str
    enable str
    exclude_lists Sequence[WafpolicyPostCrsGroupRuleExcludeList]
    is_sensitive str
    mode str
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    name str
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    paranoia_level str
    Waf ruleset paranoia mode. This is used to select rules based on the paranoia-level tag. Enum options - WAF_PARANOIA_LEVEL_LOW, WAF_PARANOIA_LEVEL_MEDIUM, WAF_PARANOIA_LEVEL_HIGH, WAF_PARANOIA_LEVEL_EXTREME. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    phase str
    rule_id str
    tags Sequence[str]
    index String
    rule String
    enable String
    excludeLists List<Property Map>
    isSensitive String
    mode String
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    name String
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    paranoiaLevel String
    Waf ruleset paranoia mode. This is used to select rules based on the paranoia-level tag. Enum options - WAF_PARANOIA_LEVEL_LOW, WAF_PARANOIA_LEVEL_MEDIUM, WAF_PARANOIA_LEVEL_HIGH, WAF_PARANOIA_LEVEL_EXTREME. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    phase String
    ruleId String
    tags List<String>

    WafpolicyPostCrsGroupRuleExcludeList, WafpolicyPostCrsGroupRuleExcludeListArgs

    clientSubnets List<Property Map>
    description String
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    matchElement String
    matchElementCriterias List<Property Map>
    uriMatchCriterias List<Property Map>
    uriPath String

    WafpolicyPostCrsGroupRuleExcludeListClientSubnet, WafpolicyPostCrsGroupRuleExcludeListClientSubnetArgs

    WafpolicyPostCrsGroupRuleExcludeListClientSubnetIpAddr, WafpolicyPostCrsGroupRuleExcludeListClientSubnetIpAddrArgs

    Addr string
    Type string
    Addr string
    Type string
    addr String
    type String
    addr string
    type string
    addr str
    type str
    addr String
    type String

    WafpolicyPostCrsGroupRuleExcludeListMatchElementCriteria, WafpolicyPostCrsGroupRuleExcludeListMatchElementCriteriaArgs

    MatchCase string
    MatchOp string
    MatchCase string
    MatchOp string
    matchCase String
    matchOp String
    matchCase string
    matchOp string
    matchCase String
    matchOp String

    WafpolicyPostCrsGroupRuleExcludeListUriMatchCriteria, WafpolicyPostCrsGroupRuleExcludeListUriMatchCriteriaArgs

    MatchCase string
    MatchOp string
    MatchCase string
    MatchOp string
    matchCase String
    matchOp String
    matchCase string
    matchOp string
    matchCase String
    matchOp String

    WafpolicyPreCrsGroup, WafpolicyPreCrsGroupArgs

    Index string
    Name string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    Enable string
    ExcludeLists List<WafpolicyPreCrsGroupExcludeList>
    Rules List<WafpolicyPreCrsGroupRule>
    Index string
    Name string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    Enable string
    ExcludeLists []WafpolicyPreCrsGroupExcludeList
    Rules []WafpolicyPreCrsGroupRule
    index String
    name String
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    enable String
    excludeLists List<WafpolicyPreCrsGroupExcludeList>
    rules List<WafpolicyPreCrsGroupRule>
    index string
    name string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    enable string
    excludeLists WafpolicyPreCrsGroupExcludeList[]
    rules WafpolicyPreCrsGroupRule[]
    index str
    name str
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    enable str
    exclude_lists Sequence[WafpolicyPreCrsGroupExcludeList]
    rules Sequence[WafpolicyPreCrsGroupRule]
    index String
    name String
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    enable String
    excludeLists List<Property Map>
    rules List<Property Map>

    WafpolicyPreCrsGroupExcludeList, WafpolicyPreCrsGroupExcludeListArgs

    clientSubnets List<Property Map>
    description String
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    matchElement String
    matchElementCriterias List<Property Map>
    uriMatchCriterias List<Property Map>
    uriPath String

    WafpolicyPreCrsGroupExcludeListClientSubnet, WafpolicyPreCrsGroupExcludeListClientSubnetArgs

    WafpolicyPreCrsGroupExcludeListClientSubnetIpAddr, WafpolicyPreCrsGroupExcludeListClientSubnetIpAddrArgs

    Addr string
    Type string
    Addr string
    Type string
    addr String
    type String
    addr string
    type string
    addr str
    type str
    addr String
    type String

    WafpolicyPreCrsGroupExcludeListMatchElementCriteria, WafpolicyPreCrsGroupExcludeListMatchElementCriteriaArgs

    MatchCase string
    MatchOp string
    MatchCase string
    MatchOp string
    matchCase String
    matchOp String
    matchCase string
    matchOp string
    matchCase String
    matchOp String

    WafpolicyPreCrsGroupExcludeListUriMatchCriteria, WafpolicyPreCrsGroupExcludeListUriMatchCriteriaArgs

    MatchCase string
    MatchOp string
    MatchCase string
    MatchOp string
    matchCase String
    matchOp String
    matchCase string
    matchOp string
    matchCase String
    matchOp String

    WafpolicyPreCrsGroupRule, WafpolicyPreCrsGroupRuleArgs

    Index string
    Rule string
    Enable string
    ExcludeLists List<WafpolicyPreCrsGroupRuleExcludeList>
    IsSensitive string
    Mode string
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    Name string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    ParanoiaLevel string
    Waf ruleset paranoia mode. This is used to select rules based on the paranoia-level tag. Enum options - WAF_PARANOIA_LEVEL_LOW, WAF_PARANOIA_LEVEL_MEDIUM, WAF_PARANOIA_LEVEL_HIGH, WAF_PARANOIA_LEVEL_EXTREME. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    Phase string
    RuleId string
    Tags List<string>
    Index string
    Rule string
    Enable string
    ExcludeLists []WafpolicyPreCrsGroupRuleExcludeList
    IsSensitive string
    Mode string
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    Name string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    ParanoiaLevel string
    Waf ruleset paranoia mode. This is used to select rules based on the paranoia-level tag. Enum options - WAF_PARANOIA_LEVEL_LOW, WAF_PARANOIA_LEVEL_MEDIUM, WAF_PARANOIA_LEVEL_HIGH, WAF_PARANOIA_LEVEL_EXTREME. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    Phase string
    RuleId string
    Tags []string
    index String
    rule String
    enable String
    excludeLists List<WafpolicyPreCrsGroupRuleExcludeList>
    isSensitive String
    mode String
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    name String
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    paranoiaLevel String
    Waf ruleset paranoia mode. This is used to select rules based on the paranoia-level tag. Enum options - WAF_PARANOIA_LEVEL_LOW, WAF_PARANOIA_LEVEL_MEDIUM, WAF_PARANOIA_LEVEL_HIGH, WAF_PARANOIA_LEVEL_EXTREME. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    phase String
    ruleId String
    tags List<String>
    index string
    rule string
    enable string
    excludeLists WafpolicyPreCrsGroupRuleExcludeList[]
    isSensitive string
    mode string
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    name string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    paranoiaLevel string
    Waf ruleset paranoia mode. This is used to select rules based on the paranoia-level tag. Enum options - WAF_PARANOIA_LEVEL_LOW, WAF_PARANOIA_LEVEL_MEDIUM, WAF_PARANOIA_LEVEL_HIGH, WAF_PARANOIA_LEVEL_EXTREME. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    phase string
    ruleId string
    tags string[]
    index str
    rule str
    enable str
    exclude_lists Sequence[WafpolicyPreCrsGroupRuleExcludeList]
    is_sensitive str
    mode str
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    name str
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    paranoia_level str
    Waf ruleset paranoia mode. This is used to select rules based on the paranoia-level tag. Enum options - WAF_PARANOIA_LEVEL_LOW, WAF_PARANOIA_LEVEL_MEDIUM, WAF_PARANOIA_LEVEL_HIGH, WAF_PARANOIA_LEVEL_EXTREME. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    phase str
    rule_id str
    tags Sequence[str]
    index String
    rule String
    enable String
    excludeLists List<Property Map>
    isSensitive String
    mode String
    Waf policy mode. This can be detection or enforcement. It can be overwritten by rules if allow_mode_delegation is set. Enum options - WAF_MODE_DETECTION_ONLY, WAF_MODE_ENFORCEMENT. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    name String
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    paranoiaLevel String
    Waf ruleset paranoia mode. This is used to select rules based on the paranoia-level tag. Enum options - WAF_PARANOIA_LEVEL_LOW, WAF_PARANOIA_LEVEL_MEDIUM, WAF_PARANOIA_LEVEL_HIGH, WAF_PARANOIA_LEVEL_EXTREME. Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    phase String
    ruleId String
    tags List<String>

    WafpolicyPreCrsGroupRuleExcludeList, WafpolicyPreCrsGroupRuleExcludeListArgs

    clientSubnets List<Property Map>
    description String
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    matchElement String
    matchElementCriterias List<Property Map>
    uriMatchCriterias List<Property Map>
    uriPath String

    WafpolicyPreCrsGroupRuleExcludeListClientSubnet, WafpolicyPreCrsGroupRuleExcludeListClientSubnetArgs

    WafpolicyPreCrsGroupRuleExcludeListClientSubnetIpAddr, WafpolicyPreCrsGroupRuleExcludeListClientSubnetIpAddrArgs

    Addr string
    Type string
    Addr string
    Type string
    addr String
    type String
    addr string
    type string
    addr str
    type str
    addr String
    type String

    WafpolicyPreCrsGroupRuleExcludeListMatchElementCriteria, WafpolicyPreCrsGroupRuleExcludeListMatchElementCriteriaArgs

    MatchCase string
    MatchOp string
    MatchCase string
    MatchOp string
    matchCase String
    matchOp String
    matchCase string
    matchOp string
    matchCase String
    matchOp String

    WafpolicyPreCrsGroupRuleExcludeListUriMatchCriteria, WafpolicyPreCrsGroupRuleExcludeListUriMatchCriteriaArgs

    MatchCase string
    MatchOp string
    MatchCase string
    MatchOp string
    matchCase String
    matchOp String
    matchCase string
    matchOp string
    matchCase String
    matchOp String

    WafpolicyRequiredDataFile, WafpolicyRequiredDataFileArgs

    Name string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    Type string
    Name string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    Type string
    name String
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    type String
    name string
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    type string
    name str
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    type str
    name String
    Field introduced in 17.2.1. Allowed with any value in enterprise, essentials, basic, enterprise with cloud services edition.
    type String

    Package Details

    Repository
    avi vmware/terraform-provider-avi
    License
    Notes
    This Pulumi package is based on the avi Terraform Provider.
    avi logo
    avi 31.1.1 published on Monday, Apr 14, 2025 by vmware