diff --git a/pkg/serverconfigs/firewallconfigs/http_firewall_policy.go b/pkg/serverconfigs/firewallconfigs/http_firewall_policy.go index 991deaa..1b2e4c1 100644 --- a/pkg/serverconfigs/firewallconfigs/http_firewall_policy.go +++ b/pkg/serverconfigs/firewallconfigs/http_firewall_policy.go @@ -4,16 +4,17 @@ import "encoding/json" // HTTPFirewallPolicy 防火墙策略 type HTTPFirewallPolicy struct { - Id int64 `yaml:"id" json:"id"` - IsOn bool `yaml:"isOn" json:"isOn"` - Name string `yaml:"name" json:"name"` - Description string `yaml:"description" json:"description"` - Inbound *HTTPFirewallInboundConfig `yaml:"inbound" json:"inbound"` - Outbound *HTTPFirewallOutboundConfig `yaml:"outbound" json:"outbound"` - BlockOptions *HTTPFirewallBlockAction `yaml:"blockOptions" json:"blockOptions"` - Mode FirewallMode `yaml:"mode" json:"mode"` - UseLocalFirewall bool `yaml:"useLocalFirewall" json:"useLocalFirewall"` - SYNFlood *SYNFloodConfig `yaml:"synFlood" json:"synFlood"` + Id int64 `yaml:"id" json:"id"` + IsOn bool `yaml:"isOn" json:"isOn"` + Name string `yaml:"name" json:"name"` + Description string `yaml:"description" json:"description"` + Inbound *HTTPFirewallInboundConfig `yaml:"inbound" json:"inbound"` + Outbound *HTTPFirewallOutboundConfig `yaml:"outbound" json:"outbound"` + BlockOptions *HTTPFirewallBlockAction `yaml:"blockOptions" json:"blockOptions"` + Mode FirewallMode `yaml:"mode" json:"mode"` + UseLocalFirewall bool `yaml:"useLocalFirewall" json:"useLocalFirewall"` + SYNFlood *SYNFloodConfig `yaml:"synFlood" json:"synFlood"` + Log *HTTPFirewallPolicyLogConfig `yaml:"log" json:"log"` // 强制记录日志 } // Init 初始化 @@ -39,6 +40,13 @@ func (this *HTTPFirewallPolicy) Init() error { } } + if this.Log != nil { + err := this.Log.Init() + if err != nil { + return err + } + } + return nil } diff --git a/pkg/serverconfigs/firewallconfigs/http_firewall_policy_log_config.go b/pkg/serverconfigs/firewallconfigs/http_firewall_policy_log_config.go new file mode 100644 index 0000000..c7cf6df --- /dev/null +++ b/pkg/serverconfigs/firewallconfigs/http_firewall_policy_log_config.go @@ -0,0 +1,17 @@ +// Copyright 2022 Liuxiangchao iwind.liu@gmail.com. All rights reserved. Official site: https://goedge.cn . + +package firewallconfigs + +var DefaultHTTPFirewallPolicyLogConfig = &HTTPFirewallPolicyLogConfig{ + IsOn: true, + RequestBody: true, +} + +type HTTPFirewallPolicyLogConfig struct { + IsOn bool `yaml:"isOn" json:"isOn"` + RequestBody bool `yaml:"requestBody" json:"requestBody"` +} + +func (this *HTTPFirewallPolicyLogConfig) Init() error { + return nil +}