huawei-cloud-api-definitions-WAF 0.1.20250117

Huawei Cloud API definitions, generated from OpenAPI spec
Documentation
1
{"base_path":"/","components":null,"consumes":"","definitions":{"CreateCustomRuleRequestBody":{"description":"创建精准防护规则body","properties":{"action":{"$ref":"#/definitions/CustomAction"},"conditions":{"description":"匹配条件列表","items":{"$ref":"#/definitions/CustomConditions"},"type":"array"},"description":{"description":"规则描述","type":"string"},"name":{"description":"规则名称","type":"string"},"priority":{"description":"执行该规则的优先级,值越小,优先级越高,值相同时,规则创建时间早,优先级越高。取值范围:0到1000。","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"]},"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到1000。","type":"integer"},"producer":{"description":"规则创建对象,该参数为预留参数,用于后续功能扩展,当前请用户忽略该参数","type":"integer"},"start":{"description":"精准防护规则生效的起始时间戳(秒)。当time=true,才会返回该参数。","format":"int64","type":"integer"},"status":{"description":"规则状态,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":"40ac2e84d57d401097fe4bfc9e66850e","info_version":"v1","method":"post","name":"CreateCustomRule","parameters":{},"paths":{"/v1/{project_id}/waf/policy/{policy_id}/custom":{"post":{"description":"创建精准防护规则","operationId":"CreateCustomRule","parameters":[{"description":"用户Token,通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。","in":"header","name":"X-Auth-Token","required":true,"type":"string"},{"default":"application/json;charset=utf8","description":"内容类型","in":"header","name":"Content-Type","required":true,"type":"string"},{"default":"","description":"项目ID,对应华为云控制台用户名->我的凭证->项目列表->项目ID","in":"path","name":"project_id","required":true,"type":"string"},{"description":"您可以通过调用企业项目管理服务(EPS)的查询企业项目列表接口(ListEnterpriseProject)查询企业项目id","in":"query","name":"enterprise_project_id","required":false,"type":"string"},{"description":"防护策略id,通过指定防护策略id来指明查询该防护策略下的防护规则,您可以通过调用查询防护策略列表(ListPolicy)获取策略id","in":"path","name":"policy_id","required":true,"type":"string"},{"description":"CreateCustomRuleRequestBody","in":"body","name":"CreateCustomRuleRequestBody","required":true,"schema":{"$ref":"#/definitions/CreateCustomRuleRequestBody"}}],"produces":["application/json"],"responses":{"200":{"description":"ok","examples":{"application/json":{"action":{"category":"block"},"action_mode":false,"conditions":[{"category":"header","contents":["demo"],"index":"demo","logic_operation":"contain"}],"description":"","id":"2a3caa2bc9814c09ad73d02e3485b4a4","name":"test55","policyid":"1f016cde588646aca3fb19f277c44d03","priority":50,"status":1,"time":false,"timestamp":1656495488880}},"schema":{"$ref":"#/definitions/CreateCustomRuleResponseBody"}},"400":{"description":"请求失败","schema":{"$ref":"#/definitions/RestErrorResponse"}},"401":{"description":"token权限不足","schema":{"$ref":"#/definitions/RestErrorResponse"}},"500":{"description":"服务器内部错误","schema":{"$ref":"#/definitions/RestErrorResponse"}}},"summary":"创建精准防护规则","tags":["策略规则管理"],"x-is-registered":"Y","x-request-examples-1":{"action":{"category":"block"},"conditions":[{"category":"header","contents":["demo"],"index":"demo","logic_operation":"contain"}],"description":"","name":"test55","priority":50,"time":false},"x-request-examples-description-1":"在项目id为project_id和防护策略id为policy_id的防护策略下创建精准防护规则。规则的名称test55,精准防护规则命中后防护动作为拦截,执行该规则的优先级为50,匹配条件为header中发现demo字段包含“demo“,精准防护规则生效时间为立即生效。","x-request-examples-url-1":"POST https://{Endpoint}/v1/{project_id}/waf/policy/{policy_id}/custom?enterprise_project_id=0","x-support-international":true,"x-support-sdk":"Y"}}},"product_short":"WAF","region_id":"cn-north-4","schemes":["HTTPS"],"security_definitions":null,"summary":"创建精准防护规则","tags":"策略规则管理","uri":null,"version":"2.0"}