更新时间:2024-11-18 GMT+08:00

更新CC规则

功能介绍

更新cc规则

URI

PUT /v1/edgesec/configuration/http/policies/{policy_id}/cc-rule/{rule_id}

表1 路径参数

参数

是否必选

参数类型

描述

policy_id

String

策略id

rule_id

String

cc规则id

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

auth token

表3 请求Body参数

参数

是否必选

参数类型

描述

name

String

规则名称

priority

Integer

cc规则优先级,越大优先级越高,默认1

description

String

规则描述,最长512字符

status

Integer

规则开关状态

mode

Integer

cc规则防护模式,现在只支持创建高级cc规则防护模式。

  • 0:标准,只支持对域名的防护路径做限制。
  • 1:高级,支持对路径、IP、Cookie、Header、Params字段做限制。

total_num

Integer

所有用户的周期内请求次数

limit_num

Integer

单个用户的周期内请求次数

limit_period

Integer

限速周期

lock_time

Integer

锁定时长

tag_type

String

限速模式:

  • ip:IP限速,根据IP区分单个Web访问者。
  • cookie:用户限速,根据Cookie键值区分单个Web访问者。
  • header:用户限速,根据Header区分单个Web访问者。
  • other:根据Referer(自定义请求访问的来源)字段区分单个Web访问者。
  • policy: 策略限速
  • domain: 域名限速
  • url: url限速

tag_index

String

用户标识,当限速模式为用户限速(cookie或header)时,需要传该参数。

  • 选择cookie时,设置cookie字段名,即用户需要根据网站实际情况配置唯一可识别Web访问者的cookie中的某属性变量名。用户标识的cookie,不支持正则,必须完全匹配。例如:如果网站使用cookie中的某个字段name唯一标识用户,那么可以选取name字段来区分Web访问者。
  • 选择header时,设置需要防护的自定义HTTP首部,即用户需要根据网站实际情况配置可识别Web访问者的HTTP首部。

tag_condition

HttpCcRuleCondition object

防护规则条件

unlock_num

Integer

放行次数

domain_aggregation

Boolean

是否聚合域名

value_case

Boolean

区分大小写,默认不区分false,统一存放小写

conditions

Array of HttpCcRuleCondition objects

限速条件

action

HttpRuleAction object

防护规则动作

time_mode

String

生效模式

start

Long

customize生效时间区间开始

terminal

Long

customize生效时间区间结束

period_type

String

period每日生效时间类型,目前只有day

time_range

Array of TimeRangeItem objects

period每日生效时间区间

表4 HttpCcRuleCondition

参数

是否必选

参数类型

描述

category

String

防护规则字段

index

String

子字段,当字段类型(category)选择“params”、“cookie”、“header”时,请根据实际需求配置子字段且该参数必填。

contents

Array of strings

条件列表逻辑匹配内容。当logic_operation参数不以any或者all结尾时,需要传该参数。

logic_operation

String

条件列表匹配逻辑。

  • 如果字段类型category是url, 匹配逻辑可以为:contain、 not_contain、 equal、 not_equal、 prefix、 not_prefix、 suffix、 not_suffix、 contain_any、 not_contain_all、 equal_any、 not_equal_all、 equal_any、 not_equal_all、 prefix_any、 not_prefix_all、 suffix_any、 not_suffix_all、 len_greater、 len_less、len_equal或者len_not_equal
  • 如果字段类型category是ip或者ipv6,匹配逻辑可以为: equal、not_equal、equal_any或者not_equal_all
  • 如果字段类型category是params、cookie或者header, 匹配逻辑可以为:contain、 not_contain、 equal、 not_equal、 prefix、 not_prefix、 suffix、 not_suffix、 contain_any、 not_contain_all、 equal_any、not_equal_all、 equal_any、 not_equal_all、 prefix_any、 not_prefix_all、 suffix_any、 not_suffix_all、 len_greater、 len_less、len_equal、len_not_equal、、num_greater、num_less、num_equal、num_not_equal、exist或者not_exist

value_list_id

String

引用表id。当logic_operation参数以any或者all结尾时,需要传该参数。此外,引用表类型要与category类型保持一致。

size

Long

若防护规则涉及阈值,即使用该字段

check_all_indexes_logic

Integer

  • 1:所有子字段
  • 2:任意子字段
表5 HttpRuleAction

参数

是否必选

参数类型

描述

category

String

操作类型。

  • “block”:拦截。
  • “pass”:放行。
  • “log”:仅记录

followed_action_id

String

攻击惩罚规则id,只有当category参数值为block时才可配置该参数

detail

HttpRuleActionDetail object

防护规则动作

表6 HttpRuleActionDetail

参数

是否必选

参数类型

描述

redirect_url

String

返回页面重定向的url

response

HttpRuleActionResponse object

防护规则返回页面

表7 HttpRuleActionResponse

参数

是否必选

参数类型

描述

content_type

String

内容类型

content

String

内容

表8 TimeRangeItem

参数

是否必选

参数类型

描述

st

Integer

period每日生效时间区间开始

end

Integer

period每日生效时间区间结束

响应参数

状态码: 200

表9 响应Body参数

参数

参数类型

描述

id

String

规则id

name

String

规则名称

priority

Integer

cc规则优先级,越大优先级越高,默认1

policy_id

String

规则所在策略id

policy_name

String

规则所在策略名称

timestamp

Long

创建规则时间戳

description

String

规则描述

status

Integer

规则开关状态

mode

Integer

规则类型(0:标准/1:高级)

total_num

Integer

所有用户的周期内请求次数

limit_num

Integer

单个用户的周期内请求次数

limit_period

Integer

限速周期

lock_time

Integer

锁定时长

tag_type

String

防护模式

tag_index

String

防护模式标签

tag_condition

HttpCcRuleCondition object

防护规则条件

unlock_num

Integer

放行次数

domain_aggregation

Boolean

是否聚合域名

conditions

Array of HttpCcRuleCondition objects

条件列表参数较为复杂,存在级联关系,建议同时使用控制台上的添加误报屏蔽规则,单击F12键查看路径后缀为/cc-rule,方法为POST的请求参数,便于理解参数的填写

action

HttpRuleAction object

防护规则动作

producer

Integer

创建来源

time_mode

String

生效模式

start

Long

customize生效时间区间开始

terminal

Long

customize生效时间区间结束

period_type

String

period每日生效时间类型,目前只有day

time_range

Array of TimeRangeItem objects

period每日生效时间区间

表10 HttpCcRuleCondition

参数

参数类型

描述

category

String

防护规则字段

index

String

子字段,当字段类型(category)选择“params”、“cookie”、“header”时,请根据实际需求配置子字段且该参数必填。

contents

Array of strings

条件列表逻辑匹配内容。当logic_operation参数不以any或者all结尾时,需要传该参数。

logic_operation

String

条件列表匹配逻辑。

  • 如果字段类型category是url, 匹配逻辑可以为:contain、 not_contain、 equal、 not_equal、 prefix、 not_prefix、 suffix、 not_suffix、 contain_any、 not_contain_all、 equal_any、 not_equal_all、 equal_any、 not_equal_all、 prefix_any、 not_prefix_all、 suffix_any、 not_suffix_all、 len_greater、 len_less、len_equal或者len_not_equal
  • 如果字段类型category是ip或者ipv6,匹配逻辑可以为: equal、not_equal、equal_any或者not_equal_all
  • 如果字段类型category是params、cookie或者header, 匹配逻辑可以为:contain、 not_contain、 equal、 not_equal、 prefix、 not_prefix、 suffix、 not_suffix、 contain_any、 not_contain_all、 equal_any、not_equal_all、 equal_any、 not_equal_all、 prefix_any、 not_prefix_all、 suffix_any、 not_suffix_all、 len_greater、 len_less、len_equal、len_not_equal、、num_greater、num_less、num_equal、num_not_equal、exist或者not_exist

value_list_id

String

引用表id。当logic_operation参数以any或者all结尾时,需要传该参数。此外,引用表类型要与category类型保持一致。

size

Long

若防护规则涉及阈值,即使用该字段

check_all_indexes_logic

Integer

  • 1:所有子字段
  • 2:任意子字段
表11 HttpRuleAction

参数

参数类型

描述

category

String

操作类型。

  • “block”:拦截。
  • “pass”:放行。
  • “log”:仅记录

followed_action_id

String

攻击惩罚规则id,只有当category参数值为block时才可配置该参数

detail

HttpRuleActionDetail object

防护规则动作

表12 HttpRuleActionDetail

参数

参数类型

描述

redirect_url

String

返回页面重定向的url

response

HttpRuleActionResponse object

防护规则返回页面

表13 HttpRuleActionResponse

参数

参数类型

描述

content_type

String

内容类型

content

String

内容

表14 TimeRangeItem

参数

参数类型

描述

st

Integer

period每日生效时间区间开始

end

Integer

period每日生效时间区间结束

状态码: 400

表15 响应Body参数

参数

参数类型

描述

error_code

String

标准化错误码:服务名.八位数字编码

error_msg

String

清晰的错误信息

encoded_authorization_message

String

对接IAM5.0的服务,拒绝访问时需要返回IAM的相关响应

状态码: 401

表16 响应Body参数

参数

参数类型

描述

error_code

String

标准化错误码:服务名.八位数字编码

error_msg

String

清晰的错误信息

encoded_authorization_message

String

对接IAM5.0的服务,拒绝访问时需要返回IAM的相关响应

状态码: 500

表17 响应Body参数

参数

参数类型

描述

error_code

String

标准化错误码:服务名.八位数字编码

error_msg

String

清晰的错误信息

encoded_authorization_message

String

对接IAM5.0的服务,拒绝访问时需要返回IAM的相关响应

请求示例

响应示例

状态码

状态码

描述

200

请求成功

400

请求失败

401

token权限不足

500

服务器内部错误

错误码

请参见错误码