1. Packages
  2. Packages
  3. Bytepluscc Provider
  4. API Docs
  5. waf
  6. CcRule
Viewing docs for bytepluscc v0.0.46
published on Thursday, Aug 6, 2026 by Byteplus
bytepluscc logo
Viewing docs for bytepluscc v0.0.46
published on Thursday, Aug 6, 2026 by Byteplus

    WAF CC protection rule. Restricts requests based on network access IP, session, and other HTTP request objects. When the specified statistical conditions are met, a protection action is triggered

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as bytepluscc from "@byteplus/pulumi-bytepluscc";
    
    const primaryWafCcruleCase2 = new bytepluscc.waf.CcRule("primary_waf_ccrule_case_2", {
        field: "HEADER:Authorization",
        ccType: 2,
        countTime: 300,
        enable: 1,
        singleThreshold: 30,
        host: "www.testwaf.com",
        pathThreshold: 300,
        rulePriority: 9,
        cronEnable: 1,
        cronConfs: [{
            single_threshold: 10,
            path_threshold: 100,
            crontab: "* 18-20 * * 1,2,3,4,5",
        }],
        url: "/admin",
        name: "test-rule-block",
    });
    
    import pulumi
    import pulumi_bytepluscc as bytepluscc
    
    primary_waf_ccrule_case2 = bytepluscc.waf.CcRule("primary_waf_ccrule_case_2",
        field="HEADER:Authorization",
        cc_type=2,
        count_time=300,
        enable=1,
        single_threshold=30,
        host="www.testwaf.com",
        path_threshold=300,
        rule_priority=9,
        cron_enable=1,
        cron_confs=[{
            "single_threshold": 10,
            "path_threshold": 100,
            "crontab": "* 18-20 * * 1,2,3,4,5",
        }],
        url="/admin",
        name="test-rule-block")
    
    package main
    
    import (
    	"github.com/byteplus-sdk/pulumi-bytepluscc/sdk/go/bytepluscc/waf"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := waf.NewCcRule(ctx, "primary_waf_ccrule_case_2", &waf.CcRuleArgs{
    			Field:           pulumi.String("HEADER:Authorization"),
    			CcType:          pulumi.Int(2),
    			CountTime:       pulumi.Int(300),
    			Enable:          pulumi.Int(1),
    			SingleThreshold: pulumi.Int(30),
    			Host:            pulumi.String("www.testwaf.com"),
    			PathThreshold:   pulumi.Int(300),
    			RulePriority:    pulumi.Int(9),
    			CronEnable:      pulumi.Int(1),
    			CronConfs: waf.CcRuleCronConfArray{
    				&waf.CcRuleCronConfArgs{
    					Single_threshold: 10,
    					Path_threshold:   100,
    					Crontab:          pulumi.String("* 18-20 * * 1,2,3,4,5"),
    				},
    			},
    			Url:  pulumi.String("/admin"),
    			Name: pulumi.String("test-rule-block"),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Bytepluscc = Byteplus.Pulumi.Bytepluscc;
    
    return await Deployment.RunAsync(() => 
    {
        var primaryWafCcruleCase2 = new Bytepluscc.Waf.CcRule("primary_waf_ccrule_case_2", new()
        {
            Field = "HEADER:Authorization",
            CcType = 2,
            CountTime = 300,
            Enable = 1,
            SingleThreshold = 30,
            Host = "www.testwaf.com",
            PathThreshold = 300,
            RulePriority = 9,
            CronEnable = 1,
            CronConfs = new[]
            {
                new Bytepluscc.Waf.Inputs.CcRuleCronConfArgs
                {
                    Single_threshold = 10,
                    Path_threshold = 100,
                    Crontab = "* 18-20 * * 1,2,3,4,5",
                },
            },
            Url = "/admin",
            Name = "test-rule-block",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.byteplus.bytepluscc.waf.CcRule;
    import com.byteplus.bytepluscc.waf.CcRuleArgs;
    import com.pulumi.bytepluscc.waf.inputs.CcRuleCronConfArgs;
    import java.util.ArrayList;
    import java.util.Arrays;
    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 primaryWafCcruleCase2 = new CcRule("primaryWafCcruleCase2", CcRuleArgs.builder()
                .field("HEADER:Authorization")
                .ccType(2)
                .countTime(300)
                .enable(1)
                .singleThreshold(30)
                .host("www.testwaf.com")
                .pathThreshold(300)
                .rulePriority(9)
                .cronEnable(1)
                .cronConfs(CcRuleCronConfArgs.builder()
                    .single_threshold(10)
                    .path_threshold(100)
                    .crontab("* 18-20 * * 1,2,3,4,5")
                    .build())
                .url("/admin")
                .name("test-rule-block")
                .build());
    
        }
    }
    
    resources:
      primaryWafCcruleCase2:
        type: bytepluscc:waf:CcRule
        name: primary_waf_ccrule_case_2
        properties:
          field: HEADER:Authorization
          ccType: 2
          countTime: 300
          enable: 1
          singleThreshold: 30
          host: www.testwaf.com
          pathThreshold: 300
          rulePriority: 9
          cronEnable: 1
          cronConfs:
            - single_threshold: 10
              path_threshold: 100
              crontab: '* 18-20 * * 1,2,3,4,5'
          url: /admin
          name: test-rule-block
    
    pulumi {
      required_providers {
        bytepluscc = {
          source = "pulumi/bytepluscc"
        }
      }
    }
    
    resource "bytepluscc_waf_ccrule" "primary_waf_ccrule_case_2" {
      field            = "HEADER:Authorization"
      cc_type          = 2
      count_time       = 300
      enable           = 1
      single_threshold = 30
      host             = "www.testwaf.com"
      path_threshold   = 300
      rule_priority    = 9
      cron_enable      = 1
      cron_confs {
        single_threshold = 10
        path_threshold   = 100
        crontab          = "* 18-20 * * 1,2,3,4,5"
      }
      url  = "/admin"
      name = "test-rule-block"
    }
    

    Create CcRule Resource

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

    Constructor syntax

    new CcRule(name: string, args: CcRuleArgs, opts?: CustomResourceOptions);
    @overload
    def CcRule(resource_name: str,
               args: CcRuleArgs,
               opts: Optional[ResourceOptions] = None)
    
    @overload
    def CcRule(resource_name: str,
               opts: Optional[ResourceOptions] = None,
               single_threshold: Optional[int] = None,
               url: Optional[str] = None,
               count_time: Optional[int] = None,
               path_threshold: Optional[int] = None,
               rule_priority: Optional[int] = None,
               host: Optional[str] = None,
               name: Optional[str] = None,
               enable: Optional[int] = None,
               cc_type: Optional[int] = None,
               field: Optional[str] = None,
               exemption_time: Optional[int] = None,
               effect_time: Optional[int] = None,
               custom_response_page_id: Optional[str] = None,
               project_name: Optional[str] = None,
               cron_enable: Optional[int] = None,
               accurate_group: Optional[CcRuleAccurateGroupArgs] = None,
               cron_confs: Optional[Sequence[CcRuleCronConfArgs]] = None,
               ws_cdn_byte_threshold: Optional[int] = None,
               ws_cdn_enable: Optional[int] = None,
               ws_cdn_frame_threshold: Optional[int] = None,
               ws_cdn_unit: Optional[str] = None)
    func NewCcRule(ctx *Context, name string, args CcRuleArgs, opts ...ResourceOption) (*CcRule, error)
    public CcRule(string name, CcRuleArgs args, CustomResourceOptions? opts = null)
    public CcRule(String name, CcRuleArgs args)
    public CcRule(String name, CcRuleArgs args, CustomResourceOptions options)
    
    type: bytepluscc:waf:CcRule
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    
    resource "bytepluscc_waf_cc_rule" "name" {
        # resource properties
    }

    Parameters

    name string
    The unique name of the resource.
    args CcRuleArgs
    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 CcRuleArgs
    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 CcRuleArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args CcRuleArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args CcRuleArgs
    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 ccRuleResource = new Bytepluscc.Waf.CcRule("ccRuleResource", new()
    {
        SingleThreshold = 0,
        Url = "string",
        CountTime = 0,
        PathThreshold = 0,
        RulePriority = 0,
        Host = "string",
        Name = "string",
        Enable = 0,
        CcType = 0,
        Field = "string",
        ExemptionTime = 0,
        EffectTime = 0,
        CustomResponsePageId = "string",
        ProjectName = "string",
        CronEnable = 0,
        AccurateGroup = new Bytepluscc.Waf.Inputs.CcRuleAccurateGroupArgs
        {
            AccurateGroupPriority = 0,
            AccurateRules = new[]
            {
                new Bytepluscc.Waf.Inputs.CcRuleAccurateGroupAccurateRuleArgs
                {
                    HttpObj = "string",
                    ObjType = 0,
                    Opretar = 0,
                    Property = 0,
                    ValueString = "string",
                },
            },
            Id = 0,
            Logic = 0,
        },
        CronConfs = new[]
        {
            new Bytepluscc.Waf.Inputs.CcRuleCronConfArgs
            {
                Crontab = "string",
                PathThreshold = 0,
                SingleThreshold = 0,
            },
        },
        WsCdnByteThreshold = 0,
        WsCdnEnable = 0,
        WsCdnFrameThreshold = 0,
        WsCdnUnit = "string",
    });
    
    example, err := waf.NewCcRule(ctx, "ccRuleResource", &waf.CcRuleArgs{
    	SingleThreshold:      pulumi.Int(0),
    	Url:                  pulumi.String("string"),
    	CountTime:            pulumi.Int(0),
    	PathThreshold:        pulumi.Int(0),
    	RulePriority:         pulumi.Int(0),
    	Host:                 pulumi.String("string"),
    	Name:                 pulumi.String("string"),
    	Enable:               pulumi.Int(0),
    	CcType:               pulumi.Int(0),
    	Field:                pulumi.String("string"),
    	ExemptionTime:        pulumi.Int(0),
    	EffectTime:           pulumi.Int(0),
    	CustomResponsePageId: pulumi.String("string"),
    	ProjectName:          pulumi.String("string"),
    	CronEnable:           pulumi.Int(0),
    	AccurateGroup: &waf.CcRuleAccurateGroupArgs{
    		AccurateGroupPriority: pulumi.Int(0),
    		AccurateRules: waf.CcRuleAccurateGroupAccurateRuleArray{
    			&waf.CcRuleAccurateGroupAccurateRuleArgs{
    				HttpObj:     pulumi.String("string"),
    				ObjType:     pulumi.Int(0),
    				Opretar:     pulumi.Int(0),
    				Property:    pulumi.Int(0),
    				ValueString: pulumi.String("string"),
    			},
    		},
    		Id:    pulumi.Int(0),
    		Logic: pulumi.Int(0),
    	},
    	CronConfs: waf.CcRuleCronConfArray{
    		&waf.CcRuleCronConfArgs{
    			Crontab:         pulumi.String("string"),
    			PathThreshold:   pulumi.Int(0),
    			SingleThreshold: pulumi.Int(0),
    		},
    	},
    	WsCdnByteThreshold:  pulumi.Int(0),
    	WsCdnEnable:         pulumi.Int(0),
    	WsCdnFrameThreshold: pulumi.Int(0),
    	WsCdnUnit:           pulumi.String("string"),
    })
    
    resource "bytepluscc_waf_cc_rule" "ccRuleResource" {
      lifecycle {
        create_before_destroy = true
      }
      single_threshold        = 0
      url                     = "string"
      count_time              = 0
      path_threshold          = 0
      rule_priority           = 0
      host                    = "string"
      name                    = "string"
      enable                  = 0
      cc_type                 = 0
      field                   = "string"
      exemption_time          = 0
      effect_time             = 0
      custom_response_page_id = "string"
      project_name            = "string"
      cron_enable             = 0
      accurate_group = {
        accurate_group_priority = 0
        accurate_rules = [{
          http_obj     = "string"
          obj_type     = 0
          opretar      = 0
          property     = 0
          value_string = "string"
        }]
        id    = 0
        logic = 0
      }
      cron_confs {
        crontab          = "string"
        path_threshold   = 0
        single_threshold = 0
      }
      ws_cdn_byte_threshold  = 0
      ws_cdn_enable          = 0
      ws_cdn_frame_threshold = 0
      ws_cdn_unit            = "string"
    }
    
    var ccRuleResource = new CcRule("ccRuleResource", CcRuleArgs.builder()
        .singleThreshold(0)
        .url("string")
        .countTime(0)
        .pathThreshold(0)
        .rulePriority(0)
        .host("string")
        .name("string")
        .enable(0)
        .ccType(0)
        .field("string")
        .exemptionTime(0)
        .effectTime(0)
        .customResponsePageId("string")
        .projectName("string")
        .cronEnable(0)
        .accurateGroup(CcRuleAccurateGroupArgs.builder()
            .accurateGroupPriority(0)
            .accurateRules(CcRuleAccurateGroupAccurateRuleArgs.builder()
                .httpObj("string")
                .objType(0)
                .opretar(0)
                .property(0)
                .valueString("string")
                .build())
            .id(0)
            .logic(0)
            .build())
        .cronConfs(CcRuleCronConfArgs.builder()
            .crontab("string")
            .pathThreshold(0)
            .singleThreshold(0)
            .build())
        .wsCdnByteThreshold(0)
        .wsCdnEnable(0)
        .wsCdnFrameThreshold(0)
        .wsCdnUnit("string")
        .build());
    
    cc_rule_resource = bytepluscc.waf.CcRule("ccRuleResource",
        single_threshold=0,
        url="string",
        count_time=0,
        path_threshold=0,
        rule_priority=0,
        host="string",
        name="string",
        enable=0,
        cc_type=0,
        field="string",
        exemption_time=0,
        effect_time=0,
        custom_response_page_id="string",
        project_name="string",
        cron_enable=0,
        accurate_group={
            "accurate_group_priority": 0,
            "accurate_rules": [{
                "http_obj": "string",
                "obj_type": 0,
                "opretar": 0,
                "property": 0,
                "value_string": "string",
            }],
            "id": 0,
            "logic": 0,
        },
        cron_confs=[{
            "crontab": "string",
            "path_threshold": 0,
            "single_threshold": 0,
        }],
        ws_cdn_byte_threshold=0,
        ws_cdn_enable=0,
        ws_cdn_frame_threshold=0,
        ws_cdn_unit="string")
    
    const ccRuleResource = new bytepluscc.waf.CcRule("ccRuleResource", {
        singleThreshold: 0,
        url: "string",
        countTime: 0,
        pathThreshold: 0,
        rulePriority: 0,
        host: "string",
        name: "string",
        enable: 0,
        ccType: 0,
        field: "string",
        exemptionTime: 0,
        effectTime: 0,
        customResponsePageId: "string",
        projectName: "string",
        cronEnable: 0,
        accurateGroup: {
            accurateGroupPriority: 0,
            accurateRules: [{
                httpObj: "string",
                objType: 0,
                opretar: 0,
                property: 0,
                valueString: "string",
            }],
            id: 0,
            logic: 0,
        },
        cronConfs: [{
            crontab: "string",
            pathThreshold: 0,
            singleThreshold: 0,
        }],
        wsCdnByteThreshold: 0,
        wsCdnEnable: 0,
        wsCdnFrameThreshold: 0,
        wsCdnUnit: "string",
    });
    
    type: bytepluscc:waf:CcRule
    properties:
        accurateGroup:
            accurateGroupPriority: 0
            accurateRules:
                - httpObj: string
                  objType: 0
                  opretar: 0
                  property: 0
                  valueString: string
            id: 0
            logic: 0
        ccType: 0
        countTime: 0
        cronConfs:
            - crontab: string
              pathThreshold: 0
              singleThreshold: 0
        cronEnable: 0
        customResponsePageId: string
        effectTime: 0
        enable: 0
        exemptionTime: 0
        field: string
        host: string
        name: string
        pathThreshold: 0
        projectName: string
        rulePriority: 0
        singleThreshold: 0
        url: string
        wsCdnByteThreshold: 0
        wsCdnEnable: 0
        wsCdnFrameThreshold: 0
        wsCdnUnit: string
    

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

    CcType int
    Action. 0: Observe; 1: Rate limit; 2: Block; 6: JS challenge; 7: CAPTCHA.
    CountTime int
    Statistical time window, unit: seconds. Range: 5–1800.
    Enable int
    Rule switch. 0: Off; 1: On
    Field string
    Statistical object. Supports single or multiple fields, separated by commas. Up to 10 fields allowed. Basic format is DataType:Value, for example HEADER:Authorization, COOKIE:PHPSESSID, ARGS:device_id, CLIENTIP, JA3HASH, SESSION-ID, FP.
    Host string
    Domain name. The website domain to protect. Make sure the domain has been added to the current WAF instance before calling
    Name string
    Rule name. Must start with a Chinese character, letter, or number. Allows Chinese characters, letters, numbers, English period (.), underscore (_), and hyphen (-). Length: 1–128 characters.
    PathThreshold int
    Overall threshold for the current path. Range: 1–300000, unit: times
    RulePriority int
    Rule priority. Range: 0–9, where 0 is the highest priority
    SingleThreshold int
    Threshold for a single statistical object. Range: 1–300000, unit: times.
    Url string
    URL match path. Supports wildcards * and ?, where * matches zero or more characters and ? matches a single character. When AccurateGroup exists, Url and AccurateGroup are in an AND relationship.
    AccurateGroup Byteplus.CcRuleAccurateGroup
    Advanced condition group. The current path Url and AccurateGroup are in an AND relationship; the rule takes effect only when both are matched. Do not pass this field if not enabled or the list is empty.
    CronConfs List<Byteplus.CcRuleCronConf>
    Scheduled activation configuration list. Required only when CronEnable=1. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    CronEnable int
    Scheduled activation switch. 0: Off (default); 1: On. If enabled, CronConfs must also be configured
    CustomResponsePageId string
    Custom response page ID. An empty string means not configured.
    EffectTime int
    Action duration. Unit: seconds. Range: 1–86400
    ExemptionTime int
    Exemption time for CAPTCHA or JS challenge. Unit: seconds. Range: 1–3600
    ProjectName string
    Project name, which is the project associated with the current resource. Only projects with permissions under the current identity can be associated
    WsCdnByteThreshold int
    Websocket traffic threshold. Unit specified by WSCdnUnit. Required only when WSCdnEnable=1
    WsCdnEnable int
    Websocket traffic statistics switch. 0: Off (default); 1: On. If enabled, WSCdnByteThreshold/WSCdnFrameThreshold/WSCdnUnit must also be configured
    WsCdnFrameThreshold int
    Websocket connection frame threshold. Required only when WSCdnEnable=1.
    WsCdnUnit string
    Websocket traffic threshold unit. KB: kilobytes; MB: megabytes. Required only when WSCdnEnable=1
    CcType int
    Action. 0: Observe; 1: Rate limit; 2: Block; 6: JS challenge; 7: CAPTCHA.
    CountTime int
    Statistical time window, unit: seconds. Range: 5–1800.
    Enable int
    Rule switch. 0: Off; 1: On
    Field string
    Statistical object. Supports single or multiple fields, separated by commas. Up to 10 fields allowed. Basic format is DataType:Value, for example HEADER:Authorization, COOKIE:PHPSESSID, ARGS:device_id, CLIENTIP, JA3HASH, SESSION-ID, FP.
    Host string
    Domain name. The website domain to protect. Make sure the domain has been added to the current WAF instance before calling
    Name string
    Rule name. Must start with a Chinese character, letter, or number. Allows Chinese characters, letters, numbers, English period (.), underscore (_), and hyphen (-). Length: 1–128 characters.
    PathThreshold int
    Overall threshold for the current path. Range: 1–300000, unit: times
    RulePriority int
    Rule priority. Range: 0–9, where 0 is the highest priority
    SingleThreshold int
    Threshold for a single statistical object. Range: 1–300000, unit: times.
    Url string
    URL match path. Supports wildcards * and ?, where * matches zero or more characters and ? matches a single character. When AccurateGroup exists, Url and AccurateGroup are in an AND relationship.
    AccurateGroup CcRuleAccurateGroupArgs
    Advanced condition group. The current path Url and AccurateGroup are in an AND relationship; the rule takes effect only when both are matched. Do not pass this field if not enabled or the list is empty.
    CronConfs []CcRuleCronConfArgs
    Scheduled activation configuration list. Required only when CronEnable=1. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    CronEnable int
    Scheduled activation switch. 0: Off (default); 1: On. If enabled, CronConfs must also be configured
    CustomResponsePageId string
    Custom response page ID. An empty string means not configured.
    EffectTime int
    Action duration. Unit: seconds. Range: 1–86400
    ExemptionTime int
    Exemption time for CAPTCHA or JS challenge. Unit: seconds. Range: 1–3600
    ProjectName string
    Project name, which is the project associated with the current resource. Only projects with permissions under the current identity can be associated
    WsCdnByteThreshold int
    Websocket traffic threshold. Unit specified by WSCdnUnit. Required only when WSCdnEnable=1
    WsCdnEnable int
    Websocket traffic statistics switch. 0: Off (default); 1: On. If enabled, WSCdnByteThreshold/WSCdnFrameThreshold/WSCdnUnit must also be configured
    WsCdnFrameThreshold int
    Websocket connection frame threshold. Required only when WSCdnEnable=1.
    WsCdnUnit string
    Websocket traffic threshold unit. KB: kilobytes; MB: megabytes. Required only when WSCdnEnable=1
    cc_type number
    Action. 0: Observe; 1: Rate limit; 2: Block; 6: JS challenge; 7: CAPTCHA.
    count_time number
    Statistical time window, unit: seconds. Range: 5–1800.
    enable number
    Rule switch. 0: Off; 1: On
    field string
    Statistical object. Supports single or multiple fields, separated by commas. Up to 10 fields allowed. Basic format is DataType:Value, for example HEADER:Authorization, COOKIE:PHPSESSID, ARGS:device_id, CLIENTIP, JA3HASH, SESSION-ID, FP.
    host string
    Domain name. The website domain to protect. Make sure the domain has been added to the current WAF instance before calling
    name string
    Rule name. Must start with a Chinese character, letter, or number. Allows Chinese characters, letters, numbers, English period (.), underscore (_), and hyphen (-). Length: 1–128 characters.
    path_threshold number
    Overall threshold for the current path. Range: 1–300000, unit: times
    rule_priority number
    Rule priority. Range: 0–9, where 0 is the highest priority
    single_threshold number
    Threshold for a single statistical object. Range: 1–300000, unit: times.
    url string
    URL match path. Supports wildcards * and ?, where * matches zero or more characters and ? matches a single character. When AccurateGroup exists, Url and AccurateGroup are in an AND relationship.
    accurate_group object
    Advanced condition group. The current path Url and AccurateGroup are in an AND relationship; the rule takes effect only when both are matched. Do not pass this field if not enabled or the list is empty.
    cron_confs list(object)
    Scheduled activation configuration list. Required only when CronEnable=1. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    cron_enable number
    Scheduled activation switch. 0: Off (default); 1: On. If enabled, CronConfs must also be configured
    custom_response_page_id string
    Custom response page ID. An empty string means not configured.
    effect_time number
    Action duration. Unit: seconds. Range: 1–86400
    exemption_time number
    Exemption time for CAPTCHA or JS challenge. Unit: seconds. Range: 1–3600
    project_name string
    Project name, which is the project associated with the current resource. Only projects with permissions under the current identity can be associated
    ws_cdn_byte_threshold number
    Websocket traffic threshold. Unit specified by WSCdnUnit. Required only when WSCdnEnable=1
    ws_cdn_enable number
    Websocket traffic statistics switch. 0: Off (default); 1: On. If enabled, WSCdnByteThreshold/WSCdnFrameThreshold/WSCdnUnit must also be configured
    ws_cdn_frame_threshold number
    Websocket connection frame threshold. Required only when WSCdnEnable=1.
    ws_cdn_unit string
    Websocket traffic threshold unit. KB: kilobytes; MB: megabytes. Required only when WSCdnEnable=1
    ccType Integer
    Action. 0: Observe; 1: Rate limit; 2: Block; 6: JS challenge; 7: CAPTCHA.
    countTime Integer
    Statistical time window, unit: seconds. Range: 5–1800.
    enable Integer
    Rule switch. 0: Off; 1: On
    field String
    Statistical object. Supports single or multiple fields, separated by commas. Up to 10 fields allowed. Basic format is DataType:Value, for example HEADER:Authorization, COOKIE:PHPSESSID, ARGS:device_id, CLIENTIP, JA3HASH, SESSION-ID, FP.
    host String
    Domain name. The website domain to protect. Make sure the domain has been added to the current WAF instance before calling
    name String
    Rule name. Must start with a Chinese character, letter, or number. Allows Chinese characters, letters, numbers, English period (.), underscore (_), and hyphen (-). Length: 1–128 characters.
    pathThreshold Integer
    Overall threshold for the current path. Range: 1–300000, unit: times
    rulePriority Integer
    Rule priority. Range: 0–9, where 0 is the highest priority
    singleThreshold Integer
    Threshold for a single statistical object. Range: 1–300000, unit: times.
    url String
    URL match path. Supports wildcards * and ?, where * matches zero or more characters and ? matches a single character. When AccurateGroup exists, Url and AccurateGroup are in an AND relationship.
    accurateGroup CcRuleAccurateGroup
    Advanced condition group. The current path Url and AccurateGroup are in an AND relationship; the rule takes effect only when both are matched. Do not pass this field if not enabled or the list is empty.
    cronConfs List<CcRuleCronConf>
    Scheduled activation configuration list. Required only when CronEnable=1. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    cronEnable Integer
    Scheduled activation switch. 0: Off (default); 1: On. If enabled, CronConfs must also be configured
    customResponsePageId String
    Custom response page ID. An empty string means not configured.
    effectTime Integer
    Action duration. Unit: seconds. Range: 1–86400
    exemptionTime Integer
    Exemption time for CAPTCHA or JS challenge. Unit: seconds. Range: 1–3600
    projectName String
    Project name, which is the project associated with the current resource. Only projects with permissions under the current identity can be associated
    wsCdnByteThreshold Integer
    Websocket traffic threshold. Unit specified by WSCdnUnit. Required only when WSCdnEnable=1
    wsCdnEnable Integer
    Websocket traffic statistics switch. 0: Off (default); 1: On. If enabled, WSCdnByteThreshold/WSCdnFrameThreshold/WSCdnUnit must also be configured
    wsCdnFrameThreshold Integer
    Websocket connection frame threshold. Required only when WSCdnEnable=1.
    wsCdnUnit String
    Websocket traffic threshold unit. KB: kilobytes; MB: megabytes. Required only when WSCdnEnable=1
    ccType number
    Action. 0: Observe; 1: Rate limit; 2: Block; 6: JS challenge; 7: CAPTCHA.
    countTime number
    Statistical time window, unit: seconds. Range: 5–1800.
    enable number
    Rule switch. 0: Off; 1: On
    field string
    Statistical object. Supports single or multiple fields, separated by commas. Up to 10 fields allowed. Basic format is DataType:Value, for example HEADER:Authorization, COOKIE:PHPSESSID, ARGS:device_id, CLIENTIP, JA3HASH, SESSION-ID, FP.
    host string
    Domain name. The website domain to protect. Make sure the domain has been added to the current WAF instance before calling
    name string
    Rule name. Must start with a Chinese character, letter, or number. Allows Chinese characters, letters, numbers, English period (.), underscore (_), and hyphen (-). Length: 1–128 characters.
    pathThreshold number
    Overall threshold for the current path. Range: 1–300000, unit: times
    rulePriority number
    Rule priority. Range: 0–9, where 0 is the highest priority
    singleThreshold number
    Threshold for a single statistical object. Range: 1–300000, unit: times.
    url string
    URL match path. Supports wildcards * and ?, where * matches zero or more characters and ? matches a single character. When AccurateGroup exists, Url and AccurateGroup are in an AND relationship.
    accurateGroup CcRuleAccurateGroup
    Advanced condition group. The current path Url and AccurateGroup are in an AND relationship; the rule takes effect only when both are matched. Do not pass this field if not enabled or the list is empty.
    cronConfs CcRuleCronConf[]
    Scheduled activation configuration list. Required only when CronEnable=1. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    cronEnable number
    Scheduled activation switch. 0: Off (default); 1: On. If enabled, CronConfs must also be configured
    customResponsePageId string
    Custom response page ID. An empty string means not configured.
    effectTime number
    Action duration. Unit: seconds. Range: 1–86400
    exemptionTime number
    Exemption time for CAPTCHA or JS challenge. Unit: seconds. Range: 1–3600
    projectName string
    Project name, which is the project associated with the current resource. Only projects with permissions under the current identity can be associated
    wsCdnByteThreshold number
    Websocket traffic threshold. Unit specified by WSCdnUnit. Required only when WSCdnEnable=1
    wsCdnEnable number
    Websocket traffic statistics switch. 0: Off (default); 1: On. If enabled, WSCdnByteThreshold/WSCdnFrameThreshold/WSCdnUnit must also be configured
    wsCdnFrameThreshold number
    Websocket connection frame threshold. Required only when WSCdnEnable=1.
    wsCdnUnit string
    Websocket traffic threshold unit. KB: kilobytes; MB: megabytes. Required only when WSCdnEnable=1
    cc_type int
    Action. 0: Observe; 1: Rate limit; 2: Block; 6: JS challenge; 7: CAPTCHA.
    count_time int
    Statistical time window, unit: seconds. Range: 5–1800.
    enable int
    Rule switch. 0: Off; 1: On
    field str
    Statistical object. Supports single or multiple fields, separated by commas. Up to 10 fields allowed. Basic format is DataType:Value, for example HEADER:Authorization, COOKIE:PHPSESSID, ARGS:device_id, CLIENTIP, JA3HASH, SESSION-ID, FP.
    host str
    Domain name. The website domain to protect. Make sure the domain has been added to the current WAF instance before calling
    name str
    Rule name. Must start with a Chinese character, letter, or number. Allows Chinese characters, letters, numbers, English period (.), underscore (_), and hyphen (-). Length: 1–128 characters.
    path_threshold int
    Overall threshold for the current path. Range: 1–300000, unit: times
    rule_priority int
    Rule priority. Range: 0–9, where 0 is the highest priority
    single_threshold int
    Threshold for a single statistical object. Range: 1–300000, unit: times.
    url str
    URL match path. Supports wildcards * and ?, where * matches zero or more characters and ? matches a single character. When AccurateGroup exists, Url and AccurateGroup are in an AND relationship.
    accurate_group CcRuleAccurateGroupArgs
    Advanced condition group. The current path Url and AccurateGroup are in an AND relationship; the rule takes effect only when both are matched. Do not pass this field if not enabled or the list is empty.
    cron_confs Sequence[CcRuleCronConfArgs]
    Scheduled activation configuration list. Required only when CronEnable=1. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    cron_enable int
    Scheduled activation switch. 0: Off (default); 1: On. If enabled, CronConfs must also be configured
    custom_response_page_id str
    Custom response page ID. An empty string means not configured.
    effect_time int
    Action duration. Unit: seconds. Range: 1–86400
    exemption_time int
    Exemption time for CAPTCHA or JS challenge. Unit: seconds. Range: 1–3600
    project_name str
    Project name, which is the project associated with the current resource. Only projects with permissions under the current identity can be associated
    ws_cdn_byte_threshold int
    Websocket traffic threshold. Unit specified by WSCdnUnit. Required only when WSCdnEnable=1
    ws_cdn_enable int
    Websocket traffic statistics switch. 0: Off (default); 1: On. If enabled, WSCdnByteThreshold/WSCdnFrameThreshold/WSCdnUnit must also be configured
    ws_cdn_frame_threshold int
    Websocket connection frame threshold. Required only when WSCdnEnable=1.
    ws_cdn_unit str
    Websocket traffic threshold unit. KB: kilobytes; MB: megabytes. Required only when WSCdnEnable=1
    ccType Number
    Action. 0: Observe; 1: Rate limit; 2: Block; 6: JS challenge; 7: CAPTCHA.
    countTime Number
    Statistical time window, unit: seconds. Range: 5–1800.
    enable Number
    Rule switch. 0: Off; 1: On
    field String
    Statistical object. Supports single or multiple fields, separated by commas. Up to 10 fields allowed. Basic format is DataType:Value, for example HEADER:Authorization, COOKIE:PHPSESSID, ARGS:device_id, CLIENTIP, JA3HASH, SESSION-ID, FP.
    host String
    Domain name. The website domain to protect. Make sure the domain has been added to the current WAF instance before calling
    name String
    Rule name. Must start with a Chinese character, letter, or number. Allows Chinese characters, letters, numbers, English period (.), underscore (_), and hyphen (-). Length: 1–128 characters.
    pathThreshold Number
    Overall threshold for the current path. Range: 1–300000, unit: times
    rulePriority Number
    Rule priority. Range: 0–9, where 0 is the highest priority
    singleThreshold Number
    Threshold for a single statistical object. Range: 1–300000, unit: times.
    url String
    URL match path. Supports wildcards * and ?, where * matches zero or more characters and ? matches a single character. When AccurateGroup exists, Url and AccurateGroup are in an AND relationship.
    accurateGroup Property Map
    Advanced condition group. The current path Url and AccurateGroup are in an AND relationship; the rule takes effect only when both are matched. Do not pass this field if not enabled or the list is empty.
    cronConfs List<Property Map>
    Scheduled activation configuration list. Required only when CronEnable=1. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    cronEnable Number
    Scheduled activation switch. 0: Off (default); 1: On. If enabled, CronConfs must also be configured
    customResponsePageId String
    Custom response page ID. An empty string means not configured.
    effectTime Number
    Action duration. Unit: seconds. Range: 1–86400
    exemptionTime Number
    Exemption time for CAPTCHA or JS challenge. Unit: seconds. Range: 1–3600
    projectName String
    Project name, which is the project associated with the current resource. Only projects with permissions under the current identity can be associated
    wsCdnByteThreshold Number
    Websocket traffic threshold. Unit specified by WSCdnUnit. Required only when WSCdnEnable=1
    wsCdnEnable Number
    Websocket traffic statistics switch. 0: Off (default); 1: On. If enabled, WSCdnByteThreshold/WSCdnFrameThreshold/WSCdnUnit must also be configured
    wsCdnFrameThreshold Number
    Websocket connection frame threshold. Required only when WSCdnEnable=1.
    wsCdnUnit String
    Websocket traffic threshold unit. KB: kilobytes; MB: megabytes. Required only when WSCdnEnable=1

    Outputs

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

    Id string
    The provider-assigned unique ID for this managed resource.
    InsertTime string
    Rule initial entry time.
    RuleId string
    CC rule ID.
    RuleTag string
    Rule display ID. The RuleTag prefix for CC rules is always E, for example E000000003624
    UpdateTime string
    Last rule update time.
    Id string
    The provider-assigned unique ID for this managed resource.
    InsertTime string
    Rule initial entry time.
    RuleId string
    CC rule ID.
    RuleTag string
    Rule display ID. The RuleTag prefix for CC rules is always E, for example E000000003624
    UpdateTime string
    Last rule update time.
    id string
    The provider-assigned unique ID for this managed resource.
    insert_time string
    Rule initial entry time.
    rule_id string
    CC rule ID.
    rule_tag string
    Rule display ID. The RuleTag prefix for CC rules is always E, for example E000000003624
    update_time string
    Last rule update time.
    id String
    The provider-assigned unique ID for this managed resource.
    insertTime String
    Rule initial entry time.
    ruleId String
    CC rule ID.
    ruleTag String
    Rule display ID. The RuleTag prefix for CC rules is always E, for example E000000003624
    updateTime String
    Last rule update time.
    id string
    The provider-assigned unique ID for this managed resource.
    insertTime string
    Rule initial entry time.
    ruleId string
    CC rule ID.
    ruleTag string
    Rule display ID. The RuleTag prefix for CC rules is always E, for example E000000003624
    updateTime string
    Last rule update time.
    id str
    The provider-assigned unique ID for this managed resource.
    insert_time str
    Rule initial entry time.
    rule_id str
    CC rule ID.
    rule_tag str
    Rule display ID. The RuleTag prefix for CC rules is always E, for example E000000003624
    update_time str
    Last rule update time.
    id String
    The provider-assigned unique ID for this managed resource.
    insertTime String
    Rule initial entry time.
    ruleId String
    CC rule ID.
    ruleTag String
    Rule display ID. The RuleTag prefix for CC rules is always E, for example E000000003624
    updateTime String
    Last rule update time.

    Look up Existing CcRule Resource

    Get an existing CcRule 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?: CcRuleState, opts?: CustomResourceOptions): CcRule
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            accurate_group: Optional[CcRuleAccurateGroupArgs] = None,
            cc_type: Optional[int] = None,
            count_time: Optional[int] = None,
            cron_confs: Optional[Sequence[CcRuleCronConfArgs]] = None,
            cron_enable: Optional[int] = None,
            custom_response_page_id: Optional[str] = None,
            effect_time: Optional[int] = None,
            enable: Optional[int] = None,
            exemption_time: Optional[int] = None,
            field: Optional[str] = None,
            host: Optional[str] = None,
            insert_time: Optional[str] = None,
            name: Optional[str] = None,
            path_threshold: Optional[int] = None,
            project_name: Optional[str] = None,
            rule_id: Optional[str] = None,
            rule_priority: Optional[int] = None,
            rule_tag: Optional[str] = None,
            single_threshold: Optional[int] = None,
            update_time: Optional[str] = None,
            url: Optional[str] = None,
            ws_cdn_byte_threshold: Optional[int] = None,
            ws_cdn_enable: Optional[int] = None,
            ws_cdn_frame_threshold: Optional[int] = None,
            ws_cdn_unit: Optional[str] = None) -> CcRule
    func GetCcRule(ctx *Context, name string, id IDInput, state *CcRuleState, opts ...ResourceOption) (*CcRule, error)
    public static CcRule Get(string name, Input<string> id, CcRuleState? state, CustomResourceOptions? opts = null)
    public static CcRule get(String name, Output<String> id, CcRuleState state, CustomResourceOptions options)
    resources:  _:    type: bytepluscc:waf:CcRule    get:      id: ${id}
    import {
      to = bytepluscc_waf_cc_rule.example
      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:
    AccurateGroup Byteplus.CcRuleAccurateGroup
    Advanced condition group. The current path Url and AccurateGroup are in an AND relationship; the rule takes effect only when both are matched. Do not pass this field if not enabled or the list is empty.
    CcType int
    Action. 0: Observe; 1: Rate limit; 2: Block; 6: JS challenge; 7: CAPTCHA.
    CountTime int
    Statistical time window, unit: seconds. Range: 5–1800.
    CronConfs List<Byteplus.CcRuleCronConf>
    Scheduled activation configuration list. Required only when CronEnable=1. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    CronEnable int
    Scheduled activation switch. 0: Off (default); 1: On. If enabled, CronConfs must also be configured
    CustomResponsePageId string
    Custom response page ID. An empty string means not configured.
    EffectTime int
    Action duration. Unit: seconds. Range: 1–86400
    Enable int
    Rule switch. 0: Off; 1: On
    ExemptionTime int
    Exemption time for CAPTCHA or JS challenge. Unit: seconds. Range: 1–3600
    Field string
    Statistical object. Supports single or multiple fields, separated by commas. Up to 10 fields allowed. Basic format is DataType:Value, for example HEADER:Authorization, COOKIE:PHPSESSID, ARGS:device_id, CLIENTIP, JA3HASH, SESSION-ID, FP.
    Host string
    Domain name. The website domain to protect. Make sure the domain has been added to the current WAF instance before calling
    InsertTime string
    Rule initial entry time.
    Name string
    Rule name. Must start with a Chinese character, letter, or number. Allows Chinese characters, letters, numbers, English period (.), underscore (_), and hyphen (-). Length: 1–128 characters.
    PathThreshold int
    Overall threshold for the current path. Range: 1–300000, unit: times
    ProjectName string
    Project name, which is the project associated with the current resource. Only projects with permissions under the current identity can be associated
    RuleId string
    CC rule ID.
    RulePriority int
    Rule priority. Range: 0–9, where 0 is the highest priority
    RuleTag string
    Rule display ID. The RuleTag prefix for CC rules is always E, for example E000000003624
    SingleThreshold int
    Threshold for a single statistical object. Range: 1–300000, unit: times.
    UpdateTime string
    Last rule update time.
    Url string
    URL match path. Supports wildcards * and ?, where * matches zero or more characters and ? matches a single character. When AccurateGroup exists, Url and AccurateGroup are in an AND relationship.
    WsCdnByteThreshold int
    Websocket traffic threshold. Unit specified by WSCdnUnit. Required only when WSCdnEnable=1
    WsCdnEnable int
    Websocket traffic statistics switch. 0: Off (default); 1: On. If enabled, WSCdnByteThreshold/WSCdnFrameThreshold/WSCdnUnit must also be configured
    WsCdnFrameThreshold int
    Websocket connection frame threshold. Required only when WSCdnEnable=1.
    WsCdnUnit string
    Websocket traffic threshold unit. KB: kilobytes; MB: megabytes. Required only when WSCdnEnable=1
    AccurateGroup CcRuleAccurateGroupArgs
    Advanced condition group. The current path Url and AccurateGroup are in an AND relationship; the rule takes effect only when both are matched. Do not pass this field if not enabled or the list is empty.
    CcType int
    Action. 0: Observe; 1: Rate limit; 2: Block; 6: JS challenge; 7: CAPTCHA.
    CountTime int
    Statistical time window, unit: seconds. Range: 5–1800.
    CronConfs []CcRuleCronConfArgs
    Scheduled activation configuration list. Required only when CronEnable=1. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    CronEnable int
    Scheduled activation switch. 0: Off (default); 1: On. If enabled, CronConfs must also be configured
    CustomResponsePageId string
    Custom response page ID. An empty string means not configured.
    EffectTime int
    Action duration. Unit: seconds. Range: 1–86400
    Enable int
    Rule switch. 0: Off; 1: On
    ExemptionTime int
    Exemption time for CAPTCHA or JS challenge. Unit: seconds. Range: 1–3600
    Field string
    Statistical object. Supports single or multiple fields, separated by commas. Up to 10 fields allowed. Basic format is DataType:Value, for example HEADER:Authorization, COOKIE:PHPSESSID, ARGS:device_id, CLIENTIP, JA3HASH, SESSION-ID, FP.
    Host string
    Domain name. The website domain to protect. Make sure the domain has been added to the current WAF instance before calling
    InsertTime string
    Rule initial entry time.
    Name string
    Rule name. Must start with a Chinese character, letter, or number. Allows Chinese characters, letters, numbers, English period (.), underscore (_), and hyphen (-). Length: 1–128 characters.
    PathThreshold int
    Overall threshold for the current path. Range: 1–300000, unit: times
    ProjectName string
    Project name, which is the project associated with the current resource. Only projects with permissions under the current identity can be associated
    RuleId string
    CC rule ID.
    RulePriority int
    Rule priority. Range: 0–9, where 0 is the highest priority
    RuleTag string
    Rule display ID. The RuleTag prefix for CC rules is always E, for example E000000003624
    SingleThreshold int
    Threshold for a single statistical object. Range: 1–300000, unit: times.
    UpdateTime string
    Last rule update time.
    Url string
    URL match path. Supports wildcards * and ?, where * matches zero or more characters and ? matches a single character. When AccurateGroup exists, Url and AccurateGroup are in an AND relationship.
    WsCdnByteThreshold int
    Websocket traffic threshold. Unit specified by WSCdnUnit. Required only when WSCdnEnable=1
    WsCdnEnable int
    Websocket traffic statistics switch. 0: Off (default); 1: On. If enabled, WSCdnByteThreshold/WSCdnFrameThreshold/WSCdnUnit must also be configured
    WsCdnFrameThreshold int
    Websocket connection frame threshold. Required only when WSCdnEnable=1.
    WsCdnUnit string
    Websocket traffic threshold unit. KB: kilobytes; MB: megabytes. Required only when WSCdnEnable=1
    accurate_group object
    Advanced condition group. The current path Url and AccurateGroup are in an AND relationship; the rule takes effect only when both are matched. Do not pass this field if not enabled or the list is empty.
    cc_type number
    Action. 0: Observe; 1: Rate limit; 2: Block; 6: JS challenge; 7: CAPTCHA.
    count_time number
    Statistical time window, unit: seconds. Range: 5–1800.
    cron_confs list(object)
    Scheduled activation configuration list. Required only when CronEnable=1. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    cron_enable number
    Scheduled activation switch. 0: Off (default); 1: On. If enabled, CronConfs must also be configured
    custom_response_page_id string
    Custom response page ID. An empty string means not configured.
    effect_time number
    Action duration. Unit: seconds. Range: 1–86400
    enable number
    Rule switch. 0: Off; 1: On
    exemption_time number
    Exemption time for CAPTCHA or JS challenge. Unit: seconds. Range: 1–3600
    field string
    Statistical object. Supports single or multiple fields, separated by commas. Up to 10 fields allowed. Basic format is DataType:Value, for example HEADER:Authorization, COOKIE:PHPSESSID, ARGS:device_id, CLIENTIP, JA3HASH, SESSION-ID, FP.
    host string
    Domain name. The website domain to protect. Make sure the domain has been added to the current WAF instance before calling
    insert_time string
    Rule initial entry time.
    name string
    Rule name. Must start with a Chinese character, letter, or number. Allows Chinese characters, letters, numbers, English period (.), underscore (_), and hyphen (-). Length: 1–128 characters.
    path_threshold number
    Overall threshold for the current path. Range: 1–300000, unit: times
    project_name string
    Project name, which is the project associated with the current resource. Only projects with permissions under the current identity can be associated
    rule_id string
    CC rule ID.
    rule_priority number
    Rule priority. Range: 0–9, where 0 is the highest priority
    rule_tag string
    Rule display ID. The RuleTag prefix for CC rules is always E, for example E000000003624
    single_threshold number
    Threshold for a single statistical object. Range: 1–300000, unit: times.
    update_time string
    Last rule update time.
    url string
    URL match path. Supports wildcards * and ?, where * matches zero or more characters and ? matches a single character. When AccurateGroup exists, Url and AccurateGroup are in an AND relationship.
    ws_cdn_byte_threshold number
    Websocket traffic threshold. Unit specified by WSCdnUnit. Required only when WSCdnEnable=1
    ws_cdn_enable number
    Websocket traffic statistics switch. 0: Off (default); 1: On. If enabled, WSCdnByteThreshold/WSCdnFrameThreshold/WSCdnUnit must also be configured
    ws_cdn_frame_threshold number
    Websocket connection frame threshold. Required only when WSCdnEnable=1.
    ws_cdn_unit string
    Websocket traffic threshold unit. KB: kilobytes; MB: megabytes. Required only when WSCdnEnable=1
    accurateGroup CcRuleAccurateGroup
    Advanced condition group. The current path Url and AccurateGroup are in an AND relationship; the rule takes effect only when both are matched. Do not pass this field if not enabled or the list is empty.
    ccType Integer
    Action. 0: Observe; 1: Rate limit; 2: Block; 6: JS challenge; 7: CAPTCHA.
    countTime Integer
    Statistical time window, unit: seconds. Range: 5–1800.
    cronConfs List<CcRuleCronConf>
    Scheduled activation configuration list. Required only when CronEnable=1. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    cronEnable Integer
    Scheduled activation switch. 0: Off (default); 1: On. If enabled, CronConfs must also be configured
    customResponsePageId String
    Custom response page ID. An empty string means not configured.
    effectTime Integer
    Action duration. Unit: seconds. Range: 1–86400
    enable Integer
    Rule switch. 0: Off; 1: On
    exemptionTime Integer
    Exemption time for CAPTCHA or JS challenge. Unit: seconds. Range: 1–3600
    field String
    Statistical object. Supports single or multiple fields, separated by commas. Up to 10 fields allowed. Basic format is DataType:Value, for example HEADER:Authorization, COOKIE:PHPSESSID, ARGS:device_id, CLIENTIP, JA3HASH, SESSION-ID, FP.
    host String
    Domain name. The website domain to protect. Make sure the domain has been added to the current WAF instance before calling
    insertTime String
    Rule initial entry time.
    name String
    Rule name. Must start with a Chinese character, letter, or number. Allows Chinese characters, letters, numbers, English period (.), underscore (_), and hyphen (-). Length: 1–128 characters.
    pathThreshold Integer
    Overall threshold for the current path. Range: 1–300000, unit: times
    projectName String
    Project name, which is the project associated with the current resource. Only projects with permissions under the current identity can be associated
    ruleId String
    CC rule ID.
    rulePriority Integer
    Rule priority. Range: 0–9, where 0 is the highest priority
    ruleTag String
    Rule display ID. The RuleTag prefix for CC rules is always E, for example E000000003624
    singleThreshold Integer
    Threshold for a single statistical object. Range: 1–300000, unit: times.
    updateTime String
    Last rule update time.
    url String
    URL match path. Supports wildcards * and ?, where * matches zero or more characters and ? matches a single character. When AccurateGroup exists, Url and AccurateGroup are in an AND relationship.
    wsCdnByteThreshold Integer
    Websocket traffic threshold. Unit specified by WSCdnUnit. Required only when WSCdnEnable=1
    wsCdnEnable Integer
    Websocket traffic statistics switch. 0: Off (default); 1: On. If enabled, WSCdnByteThreshold/WSCdnFrameThreshold/WSCdnUnit must also be configured
    wsCdnFrameThreshold Integer
    Websocket connection frame threshold. Required only when WSCdnEnable=1.
    wsCdnUnit String
    Websocket traffic threshold unit. KB: kilobytes; MB: megabytes. Required only when WSCdnEnable=1
    accurateGroup CcRuleAccurateGroup
    Advanced condition group. The current path Url and AccurateGroup are in an AND relationship; the rule takes effect only when both are matched. Do not pass this field if not enabled or the list is empty.
    ccType number
    Action. 0: Observe; 1: Rate limit; 2: Block; 6: JS challenge; 7: CAPTCHA.
    countTime number
    Statistical time window, unit: seconds. Range: 5–1800.
    cronConfs CcRuleCronConf[]
    Scheduled activation configuration list. Required only when CronEnable=1. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    cronEnable number
    Scheduled activation switch. 0: Off (default); 1: On. If enabled, CronConfs must also be configured
    customResponsePageId string
    Custom response page ID. An empty string means not configured.
    effectTime number
    Action duration. Unit: seconds. Range: 1–86400
    enable number
    Rule switch. 0: Off; 1: On
    exemptionTime number
    Exemption time for CAPTCHA or JS challenge. Unit: seconds. Range: 1–3600
    field string
    Statistical object. Supports single or multiple fields, separated by commas. Up to 10 fields allowed. Basic format is DataType:Value, for example HEADER:Authorization, COOKIE:PHPSESSID, ARGS:device_id, CLIENTIP, JA3HASH, SESSION-ID, FP.
    host string
    Domain name. The website domain to protect. Make sure the domain has been added to the current WAF instance before calling
    insertTime string
    Rule initial entry time.
    name string
    Rule name. Must start with a Chinese character, letter, or number. Allows Chinese characters, letters, numbers, English period (.), underscore (_), and hyphen (-). Length: 1–128 characters.
    pathThreshold number
    Overall threshold for the current path. Range: 1–300000, unit: times
    projectName string
    Project name, which is the project associated with the current resource. Only projects with permissions under the current identity can be associated
    ruleId string
    CC rule ID.
    rulePriority number
    Rule priority. Range: 0–9, where 0 is the highest priority
    ruleTag string
    Rule display ID. The RuleTag prefix for CC rules is always E, for example E000000003624
    singleThreshold number
    Threshold for a single statistical object. Range: 1–300000, unit: times.
    updateTime string
    Last rule update time.
    url string
    URL match path. Supports wildcards * and ?, where * matches zero or more characters and ? matches a single character. When AccurateGroup exists, Url and AccurateGroup are in an AND relationship.
    wsCdnByteThreshold number
    Websocket traffic threshold. Unit specified by WSCdnUnit. Required only when WSCdnEnable=1
    wsCdnEnable number
    Websocket traffic statistics switch. 0: Off (default); 1: On. If enabled, WSCdnByteThreshold/WSCdnFrameThreshold/WSCdnUnit must also be configured
    wsCdnFrameThreshold number
    Websocket connection frame threshold. Required only when WSCdnEnable=1.
    wsCdnUnit string
    Websocket traffic threshold unit. KB: kilobytes; MB: megabytes. Required only when WSCdnEnable=1
    accurate_group CcRuleAccurateGroupArgs
    Advanced condition group. The current path Url and AccurateGroup are in an AND relationship; the rule takes effect only when both are matched. Do not pass this field if not enabled or the list is empty.
    cc_type int
    Action. 0: Observe; 1: Rate limit; 2: Block; 6: JS challenge; 7: CAPTCHA.
    count_time int
    Statistical time window, unit: seconds. Range: 5–1800.
    cron_confs Sequence[CcRuleCronConfArgs]
    Scheduled activation configuration list. Required only when CronEnable=1. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    cron_enable int
    Scheduled activation switch. 0: Off (default); 1: On. If enabled, CronConfs must also be configured
    custom_response_page_id str
    Custom response page ID. An empty string means not configured.
    effect_time int
    Action duration. Unit: seconds. Range: 1–86400
    enable int
    Rule switch. 0: Off; 1: On
    exemption_time int
    Exemption time for CAPTCHA or JS challenge. Unit: seconds. Range: 1–3600
    field str
    Statistical object. Supports single or multiple fields, separated by commas. Up to 10 fields allowed. Basic format is DataType:Value, for example HEADER:Authorization, COOKIE:PHPSESSID, ARGS:device_id, CLIENTIP, JA3HASH, SESSION-ID, FP.
    host str
    Domain name. The website domain to protect. Make sure the domain has been added to the current WAF instance before calling
    insert_time str
    Rule initial entry time.
    name str
    Rule name. Must start with a Chinese character, letter, or number. Allows Chinese characters, letters, numbers, English period (.), underscore (_), and hyphen (-). Length: 1–128 characters.
    path_threshold int
    Overall threshold for the current path. Range: 1–300000, unit: times
    project_name str
    Project name, which is the project associated with the current resource. Only projects with permissions under the current identity can be associated
    rule_id str
    CC rule ID.
    rule_priority int
    Rule priority. Range: 0–9, where 0 is the highest priority
    rule_tag str
    Rule display ID. The RuleTag prefix for CC rules is always E, for example E000000003624
    single_threshold int
    Threshold for a single statistical object. Range: 1–300000, unit: times.
    update_time str
    Last rule update time.
    url str
    URL match path. Supports wildcards * and ?, where * matches zero or more characters and ? matches a single character. When AccurateGroup exists, Url and AccurateGroup are in an AND relationship.
    ws_cdn_byte_threshold int
    Websocket traffic threshold. Unit specified by WSCdnUnit. Required only when WSCdnEnable=1
    ws_cdn_enable int
    Websocket traffic statistics switch. 0: Off (default); 1: On. If enabled, WSCdnByteThreshold/WSCdnFrameThreshold/WSCdnUnit must also be configured
    ws_cdn_frame_threshold int
    Websocket connection frame threshold. Required only when WSCdnEnable=1.
    ws_cdn_unit str
    Websocket traffic threshold unit. KB: kilobytes; MB: megabytes. Required only when WSCdnEnable=1
    accurateGroup Property Map
    Advanced condition group. The current path Url and AccurateGroup are in an AND relationship; the rule takes effect only when both are matched. Do not pass this field if not enabled or the list is empty.
    ccType Number
    Action. 0: Observe; 1: Rate limit; 2: Block; 6: JS challenge; 7: CAPTCHA.
    countTime Number
    Statistical time window, unit: seconds. Range: 5–1800.
    cronConfs List<Property Map>
    Scheduled activation configuration list. Required only when CronEnable=1. Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    cronEnable Number
    Scheduled activation switch. 0: Off (default); 1: On. If enabled, CronConfs must also be configured
    customResponsePageId String
    Custom response page ID. An empty string means not configured.
    effectTime Number
    Action duration. Unit: seconds. Range: 1–86400
    enable Number
    Rule switch. 0: Off; 1: On
    exemptionTime Number
    Exemption time for CAPTCHA or JS challenge. Unit: seconds. Range: 1–3600
    field String
    Statistical object. Supports single or multiple fields, separated by commas. Up to 10 fields allowed. Basic format is DataType:Value, for example HEADER:Authorization, COOKIE:PHPSESSID, ARGS:device_id, CLIENTIP, JA3HASH, SESSION-ID, FP.
    host String
    Domain name. The website domain to protect. Make sure the domain has been added to the current WAF instance before calling
    insertTime String
    Rule initial entry time.
    name String
    Rule name. Must start with a Chinese character, letter, or number. Allows Chinese characters, letters, numbers, English period (.), underscore (_), and hyphen (-). Length: 1–128 characters.
    pathThreshold Number
    Overall threshold for the current path. Range: 1–300000, unit: times
    projectName String
    Project name, which is the project associated with the current resource. Only projects with permissions under the current identity can be associated
    ruleId String
    CC rule ID.
    rulePriority Number
    Rule priority. Range: 0–9, where 0 is the highest priority
    ruleTag String
    Rule display ID. The RuleTag prefix for CC rules is always E, for example E000000003624
    singleThreshold Number
    Threshold for a single statistical object. Range: 1–300000, unit: times.
    updateTime String
    Last rule update time.
    url String
    URL match path. Supports wildcards * and ?, where * matches zero or more characters and ? matches a single character. When AccurateGroup exists, Url and AccurateGroup are in an AND relationship.
    wsCdnByteThreshold Number
    Websocket traffic threshold. Unit specified by WSCdnUnit. Required only when WSCdnEnable=1
    wsCdnEnable Number
    Websocket traffic statistics switch. 0: Off (default); 1: On. If enabled, WSCdnByteThreshold/WSCdnFrameThreshold/WSCdnUnit must also be configured
    wsCdnFrameThreshold Number
    Websocket connection frame threshold. Required only when WSCdnEnable=1.
    wsCdnUnit String
    Websocket traffic threshold unit. KB: kilobytes; MB: megabytes. Required only when WSCdnEnable=1

    Supporting Types

    CcRuleAccurateGroup, CcRuleAccurateGroupArgs

    AccurateGroupPriority int
    Advanced condition group priority. Not required when creating/updating, used only for list display.
    AccurateRules List<Byteplus.CcRuleAccurateGroupAccurateRule>
    List of subrules in advanced conditions Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    Id int
    Advanced condition group ID. Not required for create/update; used only for list display
    Logic int
    Logical relationship. 1: AND; 2: OR.
    AccurateGroupPriority int
    Advanced condition group priority. Not required when creating/updating, used only for list display.
    AccurateRules []CcRuleAccurateGroupAccurateRule
    List of subrules in advanced conditions Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    Id int
    Advanced condition group ID. Not required for create/update; used only for list display
    Logic int
    Logical relationship. 1: AND; 2: OR.
    accurate_group_priority number
    Advanced condition group priority. Not required when creating/updating, used only for list display.
    accurate_rules list(object)
    List of subrules in advanced conditions Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    id number
    Advanced condition group ID. Not required for create/update; used only for list display
    logic number
    Logical relationship. 1: AND; 2: OR.
    accurateGroupPriority Integer
    Advanced condition group priority. Not required when creating/updating, used only for list display.
    accurateRules List<CcRuleAccurateGroupAccurateRule>
    List of subrules in advanced conditions Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    id Integer
    Advanced condition group ID. Not required for create/update; used only for list display
    logic Integer
    Logical relationship. 1: AND; 2: OR.
    accurateGroupPriority number
    Advanced condition group priority. Not required when creating/updating, used only for list display.
    accurateRules CcRuleAccurateGroupAccurateRule[]
    List of subrules in advanced conditions Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    id number
    Advanced condition group ID. Not required for create/update; used only for list display
    logic number
    Logical relationship. 1: AND; 2: OR.
    accurate_group_priority int
    Advanced condition group priority. Not required when creating/updating, used only for list display.
    accurate_rules Sequence[CcRuleAccurateGroupAccurateRule]
    List of subrules in advanced conditions Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    id int
    Advanced condition group ID. Not required for create/update; used only for list display
    logic int
    Logical relationship. 1: AND; 2: OR.
    accurateGroupPriority Number
    Advanced condition group priority. Not required when creating/updating, used only for list display.
    accurateRules List<Property Map>
    List of subrules in advanced conditions Important Note: When using SetNestedAttribute, you must fully define all attributes of its nested structure. Incomplete definitions may cause Terraform to detect unexpected differences during plan comparison, triggering unnecessary resource updates and affecting resource stability and predictability.
    id Number
    Advanced condition group ID. Not required for create/update; used only for list display
    logic Number
    Logical relationship. 1: AND; 2: OR.

    CcRuleAccurateGroupAccurateRule, CcRuleAccurateGroupAccurateRuleArgs

    HttpObj string
    Match object. Fixed objects are automatically generated as HttpObj by ObjType; custom objects require a specific Key in HttpObj. For example: request.header.clientip, request.uri, request.queryargs.abc, request.header.custom-header, request.cookie.custom-cookie, etc
    ObjType int
    Match object type enumeration. 0: Request protocol; 1: Request URI; 2: Request method; 3: Request path; 4: Request parameters; 5: Request headers; 6: User-Agent; 7: Referer; 8: Cookie; 9: Request body length; 10: Request body format; 11: X-Forwarded-For; 12: Client IP; 13: Custom Args; 14: Custom Header; 15: Custom Cookie; 23: JA3 Hash; 25: Session-ID; 26: Client fingerprint.
    Opretar int
    Match operator enumeration. 0–5: size comparison; 6–11: substring match; 12–15: set match; 16: regex; 17–21: IP identification (only request.header.clientip or custom objects); 23/24: include/exclude address group; 25/26: include/exclude location; 27: include IP intelligence; 28/29: AS number belongs/does not belong
    Property int
    Match attribute type enumeration. 0: Value; 1: StrLen; 2: Size; 3: Keys; 4: Version; 5: IP (only used when Opretar=17–21); 6: Country.
    ValueString string
    Match value. For Opretar=17–21 (IP identification), no match content is involved and can be an empty string; for Opretar=23–29, fill in according to the required format (IP address group ID/location code/IP intelligence tag/ASN); for other operators, enter the actual match value
    HttpObj string
    Match object. Fixed objects are automatically generated as HttpObj by ObjType; custom objects require a specific Key in HttpObj. For example: request.header.clientip, request.uri, request.queryargs.abc, request.header.custom-header, request.cookie.custom-cookie, etc
    ObjType int
    Match object type enumeration. 0: Request protocol; 1: Request URI; 2: Request method; 3: Request path; 4: Request parameters; 5: Request headers; 6: User-Agent; 7: Referer; 8: Cookie; 9: Request body length; 10: Request body format; 11: X-Forwarded-For; 12: Client IP; 13: Custom Args; 14: Custom Header; 15: Custom Cookie; 23: JA3 Hash; 25: Session-ID; 26: Client fingerprint.
    Opretar int
    Match operator enumeration. 0–5: size comparison; 6–11: substring match; 12–15: set match; 16: regex; 17–21: IP identification (only request.header.clientip or custom objects); 23/24: include/exclude address group; 25/26: include/exclude location; 27: include IP intelligence; 28/29: AS number belongs/does not belong
    Property int
    Match attribute type enumeration. 0: Value; 1: StrLen; 2: Size; 3: Keys; 4: Version; 5: IP (only used when Opretar=17–21); 6: Country.
    ValueString string
    Match value. For Opretar=17–21 (IP identification), no match content is involved and can be an empty string; for Opretar=23–29, fill in according to the required format (IP address group ID/location code/IP intelligence tag/ASN); for other operators, enter the actual match value
    http_obj string
    Match object. Fixed objects are automatically generated as HttpObj by ObjType; custom objects require a specific Key in HttpObj. For example: request.header.clientip, request.uri, request.queryargs.abc, request.header.custom-header, request.cookie.custom-cookie, etc
    obj_type number
    Match object type enumeration. 0: Request protocol; 1: Request URI; 2: Request method; 3: Request path; 4: Request parameters; 5: Request headers; 6: User-Agent; 7: Referer; 8: Cookie; 9: Request body length; 10: Request body format; 11: X-Forwarded-For; 12: Client IP; 13: Custom Args; 14: Custom Header; 15: Custom Cookie; 23: JA3 Hash; 25: Session-ID; 26: Client fingerprint.
    opretar number
    Match operator enumeration. 0–5: size comparison; 6–11: substring match; 12–15: set match; 16: regex; 17–21: IP identification (only request.header.clientip or custom objects); 23/24: include/exclude address group; 25/26: include/exclude location; 27: include IP intelligence; 28/29: AS number belongs/does not belong
    property number
    Match attribute type enumeration. 0: Value; 1: StrLen; 2: Size; 3: Keys; 4: Version; 5: IP (only used when Opretar=17–21); 6: Country.
    value_string string
    Match value. For Opretar=17–21 (IP identification), no match content is involved and can be an empty string; for Opretar=23–29, fill in according to the required format (IP address group ID/location code/IP intelligence tag/ASN); for other operators, enter the actual match value
    httpObj String
    Match object. Fixed objects are automatically generated as HttpObj by ObjType; custom objects require a specific Key in HttpObj. For example: request.header.clientip, request.uri, request.queryargs.abc, request.header.custom-header, request.cookie.custom-cookie, etc
    objType Integer
    Match object type enumeration. 0: Request protocol; 1: Request URI; 2: Request method; 3: Request path; 4: Request parameters; 5: Request headers; 6: User-Agent; 7: Referer; 8: Cookie; 9: Request body length; 10: Request body format; 11: X-Forwarded-For; 12: Client IP; 13: Custom Args; 14: Custom Header; 15: Custom Cookie; 23: JA3 Hash; 25: Session-ID; 26: Client fingerprint.
    opretar Integer
    Match operator enumeration. 0–5: size comparison; 6–11: substring match; 12–15: set match; 16: regex; 17–21: IP identification (only request.header.clientip or custom objects); 23/24: include/exclude address group; 25/26: include/exclude location; 27: include IP intelligence; 28/29: AS number belongs/does not belong
    property Integer
    Match attribute type enumeration. 0: Value; 1: StrLen; 2: Size; 3: Keys; 4: Version; 5: IP (only used when Opretar=17–21); 6: Country.
    valueString String
    Match value. For Opretar=17–21 (IP identification), no match content is involved and can be an empty string; for Opretar=23–29, fill in according to the required format (IP address group ID/location code/IP intelligence tag/ASN); for other operators, enter the actual match value
    httpObj string
    Match object. Fixed objects are automatically generated as HttpObj by ObjType; custom objects require a specific Key in HttpObj. For example: request.header.clientip, request.uri, request.queryargs.abc, request.header.custom-header, request.cookie.custom-cookie, etc
    objType number
    Match object type enumeration. 0: Request protocol; 1: Request URI; 2: Request method; 3: Request path; 4: Request parameters; 5: Request headers; 6: User-Agent; 7: Referer; 8: Cookie; 9: Request body length; 10: Request body format; 11: X-Forwarded-For; 12: Client IP; 13: Custom Args; 14: Custom Header; 15: Custom Cookie; 23: JA3 Hash; 25: Session-ID; 26: Client fingerprint.
    opretar number
    Match operator enumeration. 0–5: size comparison; 6–11: substring match; 12–15: set match; 16: regex; 17–21: IP identification (only request.header.clientip or custom objects); 23/24: include/exclude address group; 25/26: include/exclude location; 27: include IP intelligence; 28/29: AS number belongs/does not belong
    property number
    Match attribute type enumeration. 0: Value; 1: StrLen; 2: Size; 3: Keys; 4: Version; 5: IP (only used when Opretar=17–21); 6: Country.
    valueString string
    Match value. For Opretar=17–21 (IP identification), no match content is involved and can be an empty string; for Opretar=23–29, fill in according to the required format (IP address group ID/location code/IP intelligence tag/ASN); for other operators, enter the actual match value
    http_obj str
    Match object. Fixed objects are automatically generated as HttpObj by ObjType; custom objects require a specific Key in HttpObj. For example: request.header.clientip, request.uri, request.queryargs.abc, request.header.custom-header, request.cookie.custom-cookie, etc
    obj_type int
    Match object type enumeration. 0: Request protocol; 1: Request URI; 2: Request method; 3: Request path; 4: Request parameters; 5: Request headers; 6: User-Agent; 7: Referer; 8: Cookie; 9: Request body length; 10: Request body format; 11: X-Forwarded-For; 12: Client IP; 13: Custom Args; 14: Custom Header; 15: Custom Cookie; 23: JA3 Hash; 25: Session-ID; 26: Client fingerprint.
    opretar int
    Match operator enumeration. 0–5: size comparison; 6–11: substring match; 12–15: set match; 16: regex; 17–21: IP identification (only request.header.clientip or custom objects); 23/24: include/exclude address group; 25/26: include/exclude location; 27: include IP intelligence; 28/29: AS number belongs/does not belong
    property int
    Match attribute type enumeration. 0: Value; 1: StrLen; 2: Size; 3: Keys; 4: Version; 5: IP (only used when Opretar=17–21); 6: Country.
    value_string str
    Match value. For Opretar=17–21 (IP identification), no match content is involved and can be an empty string; for Opretar=23–29, fill in according to the required format (IP address group ID/location code/IP intelligence tag/ASN); for other operators, enter the actual match value
    httpObj String
    Match object. Fixed objects are automatically generated as HttpObj by ObjType; custom objects require a specific Key in HttpObj. For example: request.header.clientip, request.uri, request.queryargs.abc, request.header.custom-header, request.cookie.custom-cookie, etc
    objType Number
    Match object type enumeration. 0: Request protocol; 1: Request URI; 2: Request method; 3: Request path; 4: Request parameters; 5: Request headers; 6: User-Agent; 7: Referer; 8: Cookie; 9: Request body length; 10: Request body format; 11: X-Forwarded-For; 12: Client IP; 13: Custom Args; 14: Custom Header; 15: Custom Cookie; 23: JA3 Hash; 25: Session-ID; 26: Client fingerprint.
    opretar Number
    Match operator enumeration. 0–5: size comparison; 6–11: substring match; 12–15: set match; 16: regex; 17–21: IP identification (only request.header.clientip or custom objects); 23/24: include/exclude address group; 25/26: include/exclude location; 27: include IP intelligence; 28/29: AS number belongs/does not belong
    property Number
    Match attribute type enumeration. 0: Value; 1: StrLen; 2: Size; 3: Keys; 4: Version; 5: IP (only used when Opretar=17–21); 6: Country.
    valueString String
    Match value. For Opretar=17–21 (IP identification), no match content is involved and can be an empty string; for Opretar=23–29, fill in according to the required format (IP address group ID/location code/IP intelligence tag/ASN); for other operators, enter the actual match value

    CcRuleCronConf, CcRuleCronConfArgs

    Crontab string
    crontab expression. Recommended format: * \n\n-\n\n * * \n\n, for example * 18-20 * * 1,2,3,4,5.
    PathThreshold int
    Total path threshold during the specified period. Range: 1–300000
    SingleThreshold int
    Threshold for a single object during this time period. Range: 1–300000.
    Crontab string
    crontab expression. Recommended format: * \n\n-\n\n * * \n\n, for example * 18-20 * * 1,2,3,4,5.
    PathThreshold int
    Total path threshold during the specified period. Range: 1–300000
    SingleThreshold int
    Threshold for a single object during this time period. Range: 1–300000.
    crontab string
    crontab expression. Recommended format: * \n\n-\n\n * * \n\n, for example * 18-20 * * 1,2,3,4,5.
    path_threshold number
    Total path threshold during the specified period. Range: 1–300000
    single_threshold number
    Threshold for a single object during this time period. Range: 1–300000.
    crontab String
    crontab expression. Recommended format: * \n\n-\n\n * * \n\n, for example * 18-20 * * 1,2,3,4,5.
    pathThreshold Integer
    Total path threshold during the specified period. Range: 1–300000
    singleThreshold Integer
    Threshold for a single object during this time period. Range: 1–300000.
    crontab string
    crontab expression. Recommended format: * \n\n-\n\n * * \n\n, for example * 18-20 * * 1,2,3,4,5.
    pathThreshold number
    Total path threshold during the specified period. Range: 1–300000
    singleThreshold number
    Threshold for a single object during this time period. Range: 1–300000.
    crontab str
    crontab expression. Recommended format: * \n\n-\n\n * * \n\n, for example * 18-20 * * 1,2,3,4,5.
    path_threshold int
    Total path threshold during the specified period. Range: 1–300000
    single_threshold int
    Threshold for a single object during this time period. Range: 1–300000.
    crontab String
    crontab expression. Recommended format: * \n\n-\n\n * * \n\n, for example * 18-20 * * 1,2,3,4,5.
    pathThreshold Number
    Total path threshold during the specified period. Range: 1–300000
    singleThreshold Number
    Threshold for a single object during this time period. Range: 1–300000.

    Import

    $ pulumi import bytepluscc:waf/ccRule:CcRule example "host|rule_id"
    

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

    Package Details

    Repository
    bytepluscc byteplus-sdk/pulumi-bytepluscc
    License
    MPL-2.0
    Notes
    This Pulumi package is based on the bytepluscc Terraform Provider.
    bytepluscc logo
    Viewing docs for bytepluscc v0.0.46
    published on Thursday, Aug 6, 2026 by Byteplus

      Try Pulumi Cloud free.
      Your team will thank you.

      Start free trial