操作符是用来对比参数值和对比值的,在TeaWAF中很多时候会直接使用符号来表示,比如:
${requestURI} match /hello
中的match
就是正则表达式操作符,${requestURI}
就是参数,/hello
就是对比值。
在规则中可以使用的操作符如下:
符号:gt
描述:使用数值对比大于
符号:gte
描述:使用数值对比大于等于
符号:lt
描述:使用数值对比小于
符号:lte
描述:使用数值对比小于等于
符号:eq
描述:使用数值对比等于
符号:neq
描述:使用数值对比不等于
符号:eq string
描述:使用字符串对比等于
符号:neq string
描述:使用字符串对比不等于
符号:match
描述:使用正则表达式匹配,在头部使用(?i)表示不区分大小写
符号:not match
描述:使用正则表达式不匹配,在头部使用(?i)表示不区分大小写
符号:contains
描述:包含某个字符串
符号:not contains
描述:不包含某个字符串
符号:prefix
描述:包含某个前缀
符号:suffix
描述:包含某个后缀
符号:has key
描述:对于一组数据拥有某个键值或者索引
符号:version gt
描述:对于版本号大于