Reviewed-by: Hasko, Vladimir <vladimir.hasko@t-systems.com> Co-authored-by: Li, Qiao <qiaoli@huawei.com> Co-committed-by: Li, Qiao <qiaoli@huawei.com>
35 KiB
Updating a CC Attack Protection Rule
Function
This API is used to update a CC attack protection rule.
URI
PUT /v1/{project_id}/waf/policy/{policy_id}/cc/{rule_id}
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
project_id |
Yes |
String |
Project ID |
policy_id |
Yes |
String |
policyid |
rule_id |
Yes |
String |
ccRuleId |
Request Parameters
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
X-Auth-Token |
Yes |
String |
auth token |
Content-Type |
Yes |
String |
Content type. Default: application/json;charset=utf8 |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
description |
No |
String |
Rule description |
limit_num |
No |
Integer |
Frequency limits Minimum: 0 Maximum: 10000 |
limit_period |
No |
Integer |
Frequency limit unit Minimum: 0 Maximum: 10000 |
url |
No |
String |
url Minimum: 0 Maximum: 10000 |
mode |
No |
Integer |
Work mode. The value can be 0 (standard) or 1 (advanced). The parameters of the advanced mode cannot be described in the same document of the same API. For details, see this parameter on the console page. Enumeration values:
|
action |
No |
action object |
Action to take if the number of requests reaches the upper limit. |
tag_type |
No |
String |
Protection mode.
Enumeration values:
|
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
category |
No |
String |
Action type:
|
detail |
No |
String |
Action details. If detail is null, the default block page is displayed by default.
|
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
response |
No |
response object |
Returned page. |
Response Parameters
Status code: 200
Parameter |
Type |
Description |
---|---|---|
id |
String |
Rule ID. |
policyid |
String |
Policy ID. |
url |
String |
When the value of mode is 0, this parameter has a return value. URL to which the rule applies, excluding a domain name.
|
prefix |
Boolean |
Whether a prefix is used for the path. If the protected URL ends with an asterisk (*), a path prefix is used. |
mode |
Integer |
Mode.
|
limit_num |
String |
Number of requests allowed from a web visitor in a rate limiting period |
limit_period |
String |
Rate limiting period |
lock_time |
String |
How long a web visitor will be locked The value range is [0 to 2^32), in seconds. |
tag_type |
String |
Protection mode.
|
status |
Integer |
Rule status. The value can be 0 or 1.
|
description |
String |
Rule description |
action |
action object |
Action to take if the number of requests reaches the upper limit. |
conditions |
Array of conditions objects |
Condition list. This parameter is returned when mode is set to 1. |
timestamp |
Long |
Time the rule is created. |
Parameter |
Type |
Description |
---|---|---|
category |
String |
Action type:
|
detail |
String |
Action details. If detail is null, the default block page is displayed by default.
|
Parameter |
Type |
Description |
---|---|---|
response |
response object |
Returned page. |
Parameter |
Type |
Description |
---|---|---|
content_type |
String |
Content type. The value can only be application/json, text/html, or text/xml. |
content |
String |
Contents |
Parameter |
Type |
Description |
---|---|---|
category |
String |
Field type. The options are as follows: ip, cookie, and url |
index |
String |
Parameter description:
|
logic_operation |
String |
Condition matching logic. The options are contain, not_contain, equal, not_equal, prefix, not_prefix, suffix, not_suffix, equal_any, and not_equal_any, contain_any, and not_contain_any.
|
contents |
Array of strings |
Content of the conditions. |
Status code: 400
Parameter |
Type |
Description |
---|---|---|
error_code |
String |
Error code |
error_msg |
String |
Error message |
Status code: 401
Parameter |
Type |
Description |
---|---|---|
error_code |
String |
Error code |
error_msg |
String |
Error message |
Status code: 500
Parameter |
Type |
Description |
---|---|---|
error_code |
String |
Error code |
error_msg |
String |
Error message |
Example Requests
PUT https://{Endpoint}/v1/{project_id}/waf/policy/{policy_id}/cc/{rule_id}? { "action" : { "category" : "captcha" }, "description" : "", "limit_num" : 10, "limit_period" : 60, "mode" : 0, "tag_type" : "ip", "url" : "/path1" }
Example Responses
Status code: 200
Request succeeded.
{ "aging_time" : 0, "description" : "", "id" : "a5f3fd28db564696b199228f0ac346b2", "limit_num" : 10, "limit_period" : 60, "lock_time" : 0, "mode" : 0, "policyid" : "1f016cde588646aca3fb19f277c44d03", "prefix" : false, "status" : 1, "tag_type" : "ip", "total_num" : 0, "unaggregation" : false, "url" : "/path1" }
Status Codes
Status Code |
Description |
---|---|
200 |
Request succeeded. |
400 |
Request failed. |
401 |
The token does not have required permissions. |
500 |
Internal server error. |
Error Codes
See Error Codes.