更新时间:2022-02-22 GMT+08:00

查询精准防护规则列表

功能介绍

查询某个策略下所有的精准防护规则列表。

URI

  • URI格式

    GET /v1/{project_id}/waf/policy/{policy_id}/custom?offset={offset}&limit={limit}

  • 参数说明
    表1 Path参数说明

    名称

    是否必选

    参数类型

    说明

    project_id

    String

    用户操作的项目ID。

    policy_id

    String

    策略ID。

    offset

    Long

    指定返回的页数,取值范围为:[0, 65535],默认值为0。

    limit

    Long

    指定查询返回每页记录的最大条数,取值范围为:(0, 50],默认值为10。

请求消息

请求参数

响应消息

响应参数
表2 响应参数说明

名称

参数类型

说明

total

Integer

该策略下设置的精准防护规则总数量。

items

表3

精准防护规则的对象列表。

表3 items

名称

参数类型

说明

id

String

精准防护规则的ID。

policy_id

String

防护策略ID。

name

String

精准防护规则的名称。

conditions

List of 表4

匹配条件列表。匹配条件必须同时满足。

action

表5

精准防护规则命中后操作对象。

time

Boolean

精准防护规则的生效时间。

  • “false”:表示该规则立即生效。
  • “true”:表示自定义生效时间。

start

Long

精准防护规则生效的起始时间。当time=true,才会返回该参数。

end

Long

精准防护规则生效的终止时间。当time=true,才会返回该参数。

priority

Integer

执行该规则的优先级,值越小,优先级越高,值相同时,规则创建时间早,优先级越高。取值范围:0到65535。

timestamp

Long

创建精准访问防护规则的时间。

表4 conditions

名称

参数类型

说明

category

String

条件类型。固定值path、user-agent、ip、params、cookie、referer、header。

index

String

  • “category”“cookie”时,index表示cookie name。
  • “category”“params”时,index表示param name。
  • “category”“header”时,index表示header中的选项。

logic

String

“contain”“not_contain”“equal”,“not_equal”,“prefix”“not_prefix”“suffix”“not_suffix”分别代表包含、不包含、等于、不等于、前缀为、前缀不为、后缀为、后缀不为。

当条件类型“category”为ip时,“logic”只能为“equal”或者“not_equal”

contents

List

条件匹配的内容。

表5 action

名称

参数类型

说明

category

String

操作类型。

  • “block”:拦截。
  • “pass”:放行。

示例

如下以查询精准防护规则列表,返回记录条数为"2" 为例。

响应样例
{
  "total": 2,
  "items": [{
      "id": "7374ad99c6c448e9a9ca35cb46660a39",
      "policy_id": "9tre832yf96784ec8abd8ba61a98064ef",
      "name":"rule1",
      "time": true,
      "start": 1499817600,
      "end": 1567817600,
      "conditions": [{
          "category": "path",
          "contents": ["/login"],
          "logic": "containi"
        },{
          "category": "ip",
           "logic": "equal",
           "contents": ["X.X.1.1"]
        }
      ],
      "action": {
        "category": "block"
      },
     
     "priority": 1,
     "timestamp": 1499817600
    }, {
      "id": "7374ad99c6c448e9a9ca35cb46660a39",
      "policy_id": "9tre832yf96784ec8abd8ba61a98064ef",
      "name":"rule2",
      "time": false,
      "conditions": [{
          "category": "path",
          "contents": ["/login"],
          "logic": "contain"
        },{
          "category": "ip",
           "logic": "equal",
           "contents": ["X.X.1.1"]
        }
      ],
      "action": {
        "category": "block"
      },
     
     "priority": 1,
     "timestamp": 1499817600
    }
  ]
}

状态码

表6描述的是API返回的正常状态码。
表6 状态码

状态码

编码

状态说明

200

OK

客户端请求已处理成功。

异常状态码,请参见状态码