Class: TencentCloud::Teo::V20220901::RequestFieldsForException

Inherits:
Common::AbstractModel
  • Object
show all
Defined in:
lib/v20220901/models.rb

Overview

例外规则中的跳过字段配置

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(scope = nil, condition = nil, targetfield = nil) ⇒ RequestFieldsForException

Returns a new instance of RequestFieldsForException.



20075
20076
20077
20078
20079
# File 'lib/v20220901/models.rb', line 20075

def initialize(scope=nil, condition=nil, targetfield=nil)
  @Scope = scope
  @Condition = condition
  @TargetField = targetfield
end

Instance Attribute Details

#ConditionObject

<li>body.json:JSON 请求内容;此时 Condition 支持 key、value, TargetField 支持 key、value,例如 { “Scope”: “body.json”, “Condition”: “”, “TargetField”: “key” },表示 JSON 请求内容所有参数跳过 WAF 扫描;</li> <li style=“margin-top:5px”>cookie:Cookie;此时 Condition 支持 key、value, TargetField 支持 key、value,例如 { “Scope”: “cookie”, “Condition”: “$key in [‘account-id’] and $value like [‘prefix-*’]”, “TargetField”: “value” },表示 Cookie 参数名称等于account-id 并且参数值通配符匹配 prefix-* 跳过 WAF 扫描;</li> <li style=“margin-top:5px”>header:HTTP 头部参数;此时 Condition 支持 key、value, TargetField 支持 key、value,例如 { “Scope”: “header”, “Condition”: “$key like [‘x-auth-*’]”, “TargetField”: “value” },表示 header 参数名称通配符匹配 x-auth-* 跳过 WAF 扫描;</li> <li style=“margin-top:5px”>uri.query:URL 编码内容/查询参数;此时 Condition 支持 key、value, TargetField 支持 key、value,例如 { “Scope”: “uri.query”, “Condition”: “$key in [‘action’] and $value in [‘upload’, ‘delete’]”, “TargetField”: “value” },表示 URL 编码内容/查询参数的参数名称等于 action 并且参数值等于 upload 或 delete 跳过 WAF 扫描;</li> <li style=“margin-top:5px”>uri:请求路径URI;此时 Condition 必须为空, TargetField 支持 query、path、fullpath,例如 { “Scope”: “uri”, “Condition”: “”, “TargetField”: “query” },表示请求路径 URI 仅查询参数跳过 WAF 扫描;</li> <li style=“margin-top:5px”>body:请求正文内容。此时 Condition 必须为空, TargetField 支持 fullbody、multipart,例如 { “Scope”: “body”, “Condition”: “”, “TargetField”: “fullbody” },表示请求正文内容为完整请求正文跳过 WAF 扫描;</li> Condition 支持表达式配置语法:<li> 按规则的匹配条件表达式语法编写,支持引用 key、value。</li><li> 支持 in、like 操作符,以及 and 逻辑组合。</li> 例如:<li>$key in [‘x-trace-id’]:参数名称等于x-trace-id。</li><li>$key in [‘x-trace-id’] and $value like [‘Bearer *’]:参数名称等于x-trace-id并且参数值通配符匹配Bearer *。</li> <li> body.json:支持 key、value</li> <li> cookie:支持 key、value</li> <li> header:支持 key、value</li> <li> uri.query:支持 key、value</li> <li> uri:支持 path、query、fullpath</li> <li> body:支持 fullbody、multipart</li>

Parameters:

  • Scope:

    跳过的具体字段。取值支持:<br/>

  • Condition:

    跳过的具体字段的表达式,需要符合表达式语法。<br />

  • TargetField:

    Scope 参数使用不同取值时,TargetField 表达式中支持的值如下:



20073
20074
20075
# File 'lib/v20220901/models.rb', line 20073

def Condition
  @Condition
end

#ScopeObject

<li>body.json:JSON 请求内容;此时 Condition 支持 key、value, TargetField 支持 key、value,例如 { “Scope”: “body.json”, “Condition”: “”, “TargetField”: “key” },表示 JSON 请求内容所有参数跳过 WAF 扫描;</li> <li style=“margin-top:5px”>cookie:Cookie;此时 Condition 支持 key、value, TargetField 支持 key、value,例如 { “Scope”: “cookie”, “Condition”: “$key in [‘account-id’] and $value like [‘prefix-*’]”, “TargetField”: “value” },表示 Cookie 参数名称等于account-id 并且参数值通配符匹配 prefix-* 跳过 WAF 扫描;</li> <li style=“margin-top:5px”>header:HTTP 头部参数;此时 Condition 支持 key、value, TargetField 支持 key、value,例如 { “Scope”: “header”, “Condition”: “$key like [‘x-auth-*’]”, “TargetField”: “value” },表示 header 参数名称通配符匹配 x-auth-* 跳过 WAF 扫描;</li> <li style=“margin-top:5px”>uri.query:URL 编码内容/查询参数;此时 Condition 支持 key、value, TargetField 支持 key、value,例如 { “Scope”: “uri.query”, “Condition”: “$key in [‘action’] and $value in [‘upload’, ‘delete’]”, “TargetField”: “value” },表示 URL 编码内容/查询参数的参数名称等于 action 并且参数值等于 upload 或 delete 跳过 WAF 扫描;</li> <li style=“margin-top:5px”>uri:请求路径URI;此时 Condition 必须为空, TargetField 支持 query、path、fullpath,例如 { “Scope”: “uri”, “Condition”: “”, “TargetField”: “query” },表示请求路径 URI 仅查询参数跳过 WAF 扫描;</li> <li style=“margin-top:5px”>body:请求正文内容。此时 Condition 必须为空, TargetField 支持 fullbody、multipart,例如 { “Scope”: “body”, “Condition”: “”, “TargetField”: “fullbody” },表示请求正文内容为完整请求正文跳过 WAF 扫描;</li> Condition 支持表达式配置语法:<li> 按规则的匹配条件表达式语法编写,支持引用 key、value。</li><li> 支持 in、like 操作符,以及 and 逻辑组合。</li> 例如:<li>$key in [‘x-trace-id’]:参数名称等于x-trace-id。</li><li>$key in [‘x-trace-id’] and $value like [‘Bearer *’]:参数名称等于x-trace-id并且参数值通配符匹配Bearer *。</li> <li> body.json:支持 key、value</li> <li> cookie:支持 key、value</li> <li> header:支持 key、value</li> <li> uri.query:支持 key、value</li> <li> uri:支持 path、query、fullpath</li> <li> body:支持 fullbody、multipart</li>

Parameters:

  • Scope:

    跳过的具体字段。取值支持:<br/>

  • Condition:

    跳过的具体字段的表达式,需要符合表达式语法。<br />

  • TargetField:

    Scope 参数使用不同取值时,TargetField 表达式中支持的值如下:



20073
20074
20075
# File 'lib/v20220901/models.rb', line 20073

def Scope
  @Scope
end

#TargetFieldObject

<li>body.json:JSON 请求内容;此时 Condition 支持 key、value, TargetField 支持 key、value,例如 { “Scope”: “body.json”, “Condition”: “”, “TargetField”: “key” },表示 JSON 请求内容所有参数跳过 WAF 扫描;</li> <li style=“margin-top:5px”>cookie:Cookie;此时 Condition 支持 key、value, TargetField 支持 key、value,例如 { “Scope”: “cookie”, “Condition”: “$key in [‘account-id’] and $value like [‘prefix-*’]”, “TargetField”: “value” },表示 Cookie 参数名称等于account-id 并且参数值通配符匹配 prefix-* 跳过 WAF 扫描;</li> <li style=“margin-top:5px”>header:HTTP 头部参数;此时 Condition 支持 key、value, TargetField 支持 key、value,例如 { “Scope”: “header”, “Condition”: “$key like [‘x-auth-*’]”, “TargetField”: “value” },表示 header 参数名称通配符匹配 x-auth-* 跳过 WAF 扫描;</li> <li style=“margin-top:5px”>uri.query:URL 编码内容/查询参数;此时 Condition 支持 key、value, TargetField 支持 key、value,例如 { “Scope”: “uri.query”, “Condition”: “$key in [‘action’] and $value in [‘upload’, ‘delete’]”, “TargetField”: “value” },表示 URL 编码内容/查询参数的参数名称等于 action 并且参数值等于 upload 或 delete 跳过 WAF 扫描;</li> <li style=“margin-top:5px”>uri:请求路径URI;此时 Condition 必须为空, TargetField 支持 query、path、fullpath,例如 { “Scope”: “uri”, “Condition”: “”, “TargetField”: “query” },表示请求路径 URI 仅查询参数跳过 WAF 扫描;</li> <li style=“margin-top:5px”>body:请求正文内容。此时 Condition 必须为空, TargetField 支持 fullbody、multipart,例如 { “Scope”: “body”, “Condition”: “”, “TargetField”: “fullbody” },表示请求正文内容为完整请求正文跳过 WAF 扫描;</li> Condition 支持表达式配置语法:<li> 按规则的匹配条件表达式语法编写,支持引用 key、value。</li><li> 支持 in、like 操作符,以及 and 逻辑组合。</li> 例如:<li>$key in [‘x-trace-id’]:参数名称等于x-trace-id。</li><li>$key in [‘x-trace-id’] and $value like [‘Bearer *’]:参数名称等于x-trace-id并且参数值通配符匹配Bearer *。</li> <li> body.json:支持 key、value</li> <li> cookie:支持 key、value</li> <li> header:支持 key、value</li> <li> uri.query:支持 key、value</li> <li> uri:支持 path、query、fullpath</li> <li> body:支持 fullbody、multipart</li>

Parameters:

  • Scope:

    跳过的具体字段。取值支持:<br/>

  • Condition:

    跳过的具体字段的表达式,需要符合表达式语法。<br />

  • TargetField:

    Scope 参数使用不同取值时,TargetField 表达式中支持的值如下:



20073
20074
20075
# File 'lib/v20220901/models.rb', line 20073

def TargetField
  @TargetField
end

Instance Method Details

#deserialize(params) ⇒ Object



20081
20082
20083
20084
20085
# File 'lib/v20220901/models.rb', line 20081

def deserialize(params)
  @Scope = params['Scope']
  @Condition = params['Condition']
  @TargetField = params['TargetField']
end