{"base_path":"/","components":null,"consumes":"","definitions":{"BatchCreateCustomRuleRequestBody":{"description":"创建精准防护规则body","properties":{"action":{"$ref":"#/definitions/CustomAction"},"conditions":{"description":"匹配条件列表","items":{"$ref":"#/definitions/CustomConditions"},"type":"array"},"description":{"description":"规则描述","type":"string"},"name":{"description":"规则名称","type":"string"},"policy_ids":{"description":"添加规则的策略id列表。策略id从\"查询防护策略列表\"(ListPolicy)接口获取,多个策略之间用“,”隔开","items":{"type":"string"},"type":"array"},"priority":{"description":"执行该规则的优先级,值越小,优先级越高,值相同时,规则创建时间早,优先级越高。取值范围:0到65535。","type":"integer"},"start":{"description":"精准防护规则生效的起始时间戳(秒)。当time=true,才需要填写该参数。","format":"int64","type":"integer"},"terminal":{"description":"精准防护规则生效的终止时间戳(秒)。当time=true,才需要填写该参数。","format":"int64","type":"integer"},"time":{"description":"精准防护规则生效时间: \n- false:表示该规则立即生效\n- true:表示自定义生效时间","type":"boolean"}},"required":["name","time","conditions","action","priority","policy_ids"]},"CreateCustomRuleResponseBody":{"description":"CreateCustomRuleResponseBody","properties":{"action":{"$ref":"#/definitions/CustomAction"},"action_mode":{"description":"预留参数,可忽略。","type":"boolean"},"conditions":{"description":"匹配条件列表,匹配条件必须同时满足。","items":{"properties":{"category":{"description":"字段类型。可选值为:url、user-agent、ip、params、cookie、referer、header、request_line、method、reqeust","type":"string"},"contents":{"description":"条件匹配的内容","items":{"type":"string"},"type":"array"},"index":{"description":"子字段:\n - 字段类型为url、user-agent、ip、refer、request_line、method、reqeust时,不需要传index参数 \n - 字段类型为params、header、cookie并且子字段为自定义时,index的值为自定义子字段","type":"string"},"logic_operation":{"description":"条件匹配逻辑","type":"string"},"value_list_id":{"description":"引用表id。","type":"string"}}},"type":"array"},"description":{"description":"规则描述","type":"string"},"id":{"description":"规则id","type":"string"},"name":{"description":"规则名称","type":"string"},"policyid":{"description":"策略id","type":"string"},"priority":{"description":"执行该规则的优先级,值越小,优先级越高,值相同时,规则创建时间早,优先级越高。取值范围:0到65535。","type":"integer"},"producer":{"description":"规则创建对象,该参数为预留参数,用于后续功能扩展,当前请用户忽略该参数","type":"integer"},"start":{"description":"精准防护规则生效的起始时间戳(秒)。当time=true,才会返回该参数。","format":"int64","type":"integer"},"status":{"description":"**参数解释:**\n规则状态标识,用于指定规则的启用或关闭状态\n**约束限制:**\n不涉及\n**取值范围:**\n - 0:关闭\n - 1:开启\n**默认取值:**\n不涉及","enum":[0,1],"type":"integer"},"terminal":{"description":"精准防护规则生效的终止时间戳(秒)。当time=true,才会返回该参数。","format":"int64","type":"integer"},"time":{"description":"精准防护规则生效时间: \n- false:表示该规则立即生效。 \n- true:表示自定义生效时间。","type":"boolean"},"timestamp":{"description":"创建精准防护规则的","format":"int64","type":"integer"}}},"CustomAction":{"description":"精准防护规则命中后操作对象","properties":{"category":{"description":"操作类型。 \n - block:拦截\n - pass:放行 \n - log:仅记录","enum":["block","pass","log"],"type":"string"},"followed_action_id":{"description":"攻击惩罚规则id,只有当category参数值为block时才可配置该参数","type":"string"}},"required":["category"]},"CustomConditions":{"properties":{"category":{"description":"字段类型。可选值为:url、user-agent、ip、params、cookie、referer、header、request_line、method、request","enum":["url","user-agent","referer","ip","method","request_line","request","params","cookie","header"],"type":"string"},"contents":{"description":"条件列表逻辑匹配内容。当logic_operation参数不以any或者all结尾时,需要传该参数。","items":{"type":"string"},"type":"array"},"index":{"description":"子字段:\n - 字段类型为url、user-agent、ip、refer、request_line、method、request时,不需要传index参数 \n - 字段类型为params、header、cookie并且子字段为自定义时,index的值为自定义子字段","type":"string"},"logic_operation":{"description":"条件列表匹配逻辑。 \n - 如果字段类型category是url、user-agent或者referer, 匹配逻辑可以为: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 \n - 如果字段类型category是ip, 匹配逻辑可以为: equal、not_equal、equal_any或者not_equal_all \n - 如果字段类型category是method, 匹配逻辑可以为: equal或者not_equal n - 如果字段类型category是request_line或者request, 匹配逻辑可以为: len_greater、len_less、len_equal或者len_not_equal \n - 如果字段类型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","type":"string"},"value_list_id":{"description":"引用表id。当logic_operation参数以any或者all结尾时,需要传该参数。此外,引用表类型要与category类型保持一致。","type":"string"}},"type":"object"},"IAM5ErrorDetails":{"description":"调用下游服务的报错信息集合,IAM5鉴权错误时才会返回此信息0。","properties":{"error_code":{"description":"下游服务错误码","type":"string"},"error_msg":{"description":"下游服务报错信息","type":"string"}}},"RestErrorResponse":{"properties":{"details":{"description":"调用下游服务的报错信息集合,IAM5鉴权错误时才会返回此字段。","items":{"$ref":"#/definitions/IAM5ErrorDetails"},"type":"array"},"encoded_authorization_message":{"description":"编码 (加密) 后的详细拒绝原因,用户可以自行调用 STS 服务的decode-authorization-message接口进行解码,可参考STS5联调自验证。IAM5鉴权错误时才会返回此字段。","type":"string"},"error_code":{"description":"错误码","type":"string"},"error_msg":{"description":"错误信息","type":"string"}},"title":"RestErrorResponse","type":"object"}},"description":null,"group_id":"29975c0bd7ce463ca70ad5c074e3974b","host":"waf.cn-north-4.myhuaweicloud.com","id":"635e59398f4a4dfca79fcafbbc27dbd0","info_version":"v1","method":"post","name":"BatchCreateCustomRule","parameters":{},"paths":{"/v1/{project_id}/waf/rule/custom":{"post":{"description":"选中多个策略为这些策略批量添加精准防护规则","operationId":"BatchCreateCustomRule","parameters":[{"description":"**参数解释:**\n项目ID,对应控制台用户名->我的凭证->项目列表->项目ID。\n**约束限制:**\n不涉及\n**取值范围:**\n只能由英文字母、数字组成,且长度为32个字符。\n**默认取值:**\n不涉及","in":"path","name":"project_id","required":true,"type":"string"},{"default":"0","description":"**参数解释:**\n您可以通过调用企业项目管理服务(EPS)的查询企业项目列表接口(ListEnterpriseProject)查询企业项目ID。若需要查询当前用户所有企业项目绑定的资源信息,请传参all_granted_eps。\n**约束限制:**\n不涉及\n**取值范围:**\n - 0:代表default企业项目\n - all_granted_eps:代表所有企业项目\n - 其它企业项目ID:长度为36个字符\n**默认取值:**\n0","in":"query","name":"enterprise_project_id","required":false,"type":"string"},{"collectionFormat":"multi","description":"**参数解释:**\n策略id列表。策略id从\"查询防护策略列表\"(ListPolicy)接口获取,多个策略之间用“,”隔开\n**约束限制:**\n不涉及\n**取值范围:**\n不涉及\n**默认取值:**\n不涉及","in":"query","items":{"type":"string"},"name":"policyids","required":false,"type":"array","uniqueItems":true},{"description":"**参数解释:**\n用户Token,通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。\n**约束限制:**\n不涉及\n**取值范围:**\n不涉及\n**默认取值:**\n不涉及","in":"header","name":"X-Auth-Token","required":false,"type":"string"},{"default":"application/json;charset=utf8","description":"**参数解释:**\n内容类型\n**约束限制:**\n不涉及\n**取值范围:**\n不涉及\n**默认取值:**\napplication/json;charset=utf8","in":"header","name":"Content-Type","required":true,"type":"string"},{"description":"批量创建精准防护规则","in":"body","name":"BacthCreateCustomRuleRequestBody","required":true,"schema":{"$ref":"#/definitions/BatchCreateCustomRuleRequestBody"}}],"responses":{"200":{"description":"**参数解释:**\nOK\n**约束限制:**\n不涉及\n**取值范围:**\n不涉及\n**默认取值:**\n不涉及","examples":{"application/json":{"action":{"category":"block"},"conditions":[{"category":"header","contents":["demo"],"index":"demo","logic_operation":"contain"}],"description":"","name":"test2","priority":50,"time":false}},"schema":{"$ref":"#/definitions/CreateCustomRuleResponseBody"}},"400":{"description":"**参数解释:**\n请求失败\n**约束限制:**\n不涉及\n**取值范围:**\n不涉及\n**默认取值:**\n不涉及","schema":{"$ref":"#/definitions/RestErrorResponse"}},"401":{"description":"**参数解释:**\ntoken权限不足\n**约束限制:**\n不涉及\n**取值范围:**\n不涉及\n**默认取值:**\n不涉及","schema":{"$ref":"#/definitions/RestErrorResponse"}},"500":{"description":"**参数解释:**\n服务器内部错误\n**约束限制:**\n不涉及\n**取值范围:**\n不涉及\n**默认取值:**\n不涉及","schema":{"$ref":"#/definitions/RestErrorResponse"}}},"summary":"选中多个策略批量添加精准防护规则","tags":["策略规则管理"],"x-api-type":"open-api","x-hybridcloud":true,"x-is-registered":"Y","x-order":78,"x-request-examples-1":{"action":{"category":"block"},"conditions":[{"category":"header","contents":["demo"],"index":"demo","logic_operation":"contain"}],"description":"","name":"test2","policy_ids":["policy_id"],"priority":50,"time":false},"x-request-examples-description-1":"选中多个策略为这些策略批量添加精准防护规则","x-request-examples-text-1":{"action":{"category":"block"},"conditions":[{"category":"header","contents":["demo"],"index":"demo","logic_operation":"contain"}],"description":"","name":"test2","policy_ids":["policy_id"],"priority":50,"time":false},"x-request-examples-url-1":"POST https://{endpoint}/v1/{project_id}/waf/rule/custom?enterprise_project_id=0","x-support-sdk":"Y"}}},"product_short":"WAF","region_id":"cn-north-4","schemes":["HTTPS"],"security_definitions":null,"summary":"选中多个策略批量添加精准防护规则","tags":"策略规则管理","uri":null,"version":"2.0"}