创建防护策略
功能介绍
创建防护策略,系统会在生成策略时配置一些默认的配置项,如果需要修改策略的默认配置项需要通过调用更新防护策略接口实现
URI
POST /v1/{project_id}/waf/policy
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
project_id |
是 |
String |
项目ID,对应华为云控制台用户名->我的凭证->项目列表->项目ID |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
enterprise_project_id |
否 |
String |
您可以通过调用企业项目管理服务(EPS)的查询企业项目列表接口(ListEnterpriseProject)查询企业项目id |
请求参数
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
X-Auth-Token |
是 |
String |
用户Token,通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 |
Content-Type |
是 |
String |
内容类型 缺省值:application/json;charset=utf8 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
name |
是 |
String |
策略名称(策略名称只能由数字、字母和下划线组成,长度不能超过64为字符) |
响应参数
状态码: 200
参数 |
参数类型 |
描述 |
---|---|---|
id |
String |
防护策略id |
name |
String |
防护策略名 |
level |
Integer |
Web基础防护等级
缺省值:2 枚举值:
|
full_detection |
Boolean |
精准防护中的检测模式。
|
robot_action |
Action object |
用于存放网站反爬虫中特征反爬虫动作信息 |
action |
PolicyAction object |
防护动作信息 |
options |
PolicyOption object |
该参数存放防护策略里防护项的开关信息 |
modulex_options |
Map<String,Object> |
智能访问控制防护项相关配置信息,目前该特性还处于公测阶段,只有部分局点支持该特性 |
hosts |
Array of strings |
与防护策略绑定的防护的域名id数组 |
bind_host |
Array of BindHost objects |
与防护策略绑定的防护的域名信息数组,相对于hosts字段,包含更详细的域名信息 |
extend |
Map<String,String> |
扩展字段,用于存放Web基础防护中一些开关配置等信息 |
timestamp |
Long |
创建防护策略的时间 |
参数 |
参数类型 |
描述 |
---|---|---|
webattack |
Boolean |
基础防护是否开启 枚举值:
|
common |
Boolean |
常规检测是否开启 枚举值:
|
crawler |
Boolean |
预留参数,改参数值一直为true,用户可忽略该参数值 枚举值:
|
crawler_engine |
Boolean |
搜索engine是否开启 枚举值:
|
crawler_scanner |
Boolean |
反爬虫检测是否开启 枚举值:
|
crawler_script |
Boolean |
脚本反爬虫是否开启 枚举值:
|
crawler_other |
Boolean |
其他爬虫是否开启 枚举值:
|
webshell |
Boolean |
Webshell检测是否开启 枚举值:
|
cc |
Boolean |
cc规则是否开启 枚举值:
|
custom |
Boolean |
精准防护是否开启 枚举值:
|
whiteblackip |
Boolean |
黑白名单防护是否开启 枚举值:
|
geoip |
Boolean |
地理位置访问控制规则是否开启 枚举值:
|
ignore |
Boolean |
误报屏蔽是否开启 枚举值:
|
privacy |
Boolean |
隐私屏蔽是否开启 枚举值:
|
antitamper |
Boolean |
网页防篡改规则是否开启 枚举值:
|
antileakage |
Boolean |
防敏感信息泄露规则是否开启 枚举值:
|
bot_enable |
Boolean |
网站反爬虫总开关是否开启 枚举值:
|
modulex_enabled |
Boolean |
modulex智能cc防护是否开启,该特性是公测特性,在公测期间,只支持仅记录模式。 枚举值:
|
状态码: 400
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
错误码 |
error_msg |
String |
错误信息 |
状态码: 401
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
错误码 |
error_msg |
String |
错误信息 |
状态码: 403
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
错误码 |
error_msg |
String |
错误信息 |
状态码: 500
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
错误码 |
error_msg |
String |
错误信息 |
请求示例
在项目id为project_id的项目中创建一个策略名称为demo的防护策略
POST https://{Endpoint}/v1/{project_id}/waf/policy?enterprise_project_id=0 { "name" : "demo" }
响应示例
状态码: 200
OK
{ "id" : "38ff0cb9a10e4d5293c642bc0350fa6d", "name" : "demo", "level" : 2, "action" : { "category" : "log" }, "options" : { "webattack" : true, "common" : true, "crawler" : true, "crawler_engine" : false, "crawler_scanner" : true, "crawler_script" : false, "crawler_other" : false, "webshell" : false, "cc" : true, "custom" : true, "whiteblackip" : true, "geoip" : true, "ignore" : true, "privacy" : true, "antitamper" : true, "antileakage" : false, "bot_enable" : true, "modulex_enabled" : false }, "hosts" : [ ], "extend" : { }, "timestamp" : 1650529538732, "full_detection" : false, "bind_host" : [ ] }
状态码
状态码 |
描述 |
---|---|
200 |
OK |
400 |
请求失败 |
401 |
token权限不足 |
403 |
资源配额不足 |
500 |
服务器内部错误 |
错误码
请参见错误码。