From f8837f5c5b4237802a9f918f8cb1f81a1fec5759 Mon Sep 17 00:00:00 2001 From: GoEdgeLab Date: Fri, 6 Jan 2023 20:06:57 +0800 Subject: [PATCH] =?UTF-8?q?WAF=E5=A2=9E=E5=8A=A0=E5=8C=85=E5=90=AB?= =?UTF-8?q?=E4=BB=BB=E4=B8=80=E5=AD=97=E7=AC=A6=E4=B8=B2=E3=80=81=E5=8C=85?= =?UTF-8?q?=E5=90=AB=E6=89=80=E6=9C=89=E5=AD=97=E7=AC=A6=E4=B8=B2=E6=93=8D?= =?UTF-8?q?=E4=BD=9C=E7=AC=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../firewallconfigs/http_firewall_rule_operator.go | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/pkg/serverconfigs/firewallconfigs/http_firewall_rule_operator.go b/pkg/serverconfigs/firewallconfigs/http_firewall_rule_operator.go index 95d2597..35d8882 100644 --- a/pkg/serverconfigs/firewallconfigs/http_firewall_rule_operator.go +++ b/pkg/serverconfigs/firewallconfigs/http_firewall_rule_operator.go @@ -18,6 +18,8 @@ const ( HTTPFirewallRuleOperatorNotContains HTTPFirewallRuleOperator = "not contains" HTTPFirewallRuleOperatorPrefix HTTPFirewallRuleOperator = "prefix" HTTPFirewallRuleOperatorSuffix HTTPFirewallRuleOperator = "suffix" + HTTPFirewallRuleOperatorContainsAny HTTPFirewallRuleOperator = "containsAny" + HTTPFirewallRuleOperatorContainsAll HTTPFirewallRuleOperator = "containsAll" HTTPFirewallRuleOperatorHasKey HTTPFirewallRuleOperator = "has key" // has key in slice or map HTTPFirewallRuleOperatorVersionGt HTTPFirewallRuleOperator = "version gt" HTTPFirewallRuleOperatorVersionLt HTTPFirewallRuleOperator = "version lt" @@ -135,6 +137,18 @@ var AllRuleOperators = []*RuleOperatorDefinition{ Description: "包含字符串后缀部分,比如/hello后缀会匹配/hello, /hi/hello等", CaseInsensitive: HTTPFirewallRuleCaseInsensitiveNo, }, + { + Name: "包含任一字符串", + Code: HTTPFirewallRuleOperatorContainsAny, + Description: "包含字符串列表中的任意一个,比如/hello/world包含/hello和/hi中的/hello,每行一个字符串", + CaseInsensitive: HTTPFirewallRuleCaseInsensitiveNo, + }, + { + Name: "包含所有字符串", + Code: HTTPFirewallRuleOperatorContainsAll, + Description: "包含字符串列表中的所有字符串,比如/hello/world必须包含/hello和/world,每行一个字符串", + CaseInsensitive: HTTPFirewallRuleCaseInsensitiveNo, + }, { Name: "包含二进制数据", Code: HTTPFirewallRuleOperatorContainsBinary,