diff --git a/internal/web/actions/default/servers/components/waf/ipadmin/lists.go b/internal/web/actions/default/servers/components/waf/ipadmin/lists.go index 4d34cab3..1a03b754 100644 --- a/internal/web/actions/default/servers/components/waf/ipadmin/lists.go +++ b/internal/web/actions/default/servers/components/waf/ipadmin/lists.go @@ -59,6 +59,43 @@ func (this *ListsAction) RunGet(params struct { expiredTime = timeutil.FormatTime("Y-m-d H:i:s", item.ExpiredAt) } + // policy + var sourcePolicyMap = maps.Map{"id": 0} + if item.SourceHTTPFirewallPolicy != nil { + sourcePolicyMap = maps.Map{ + "id": item.SourceHTTPFirewallPolicy.Id, + "name": item.SourceHTTPFirewallPolicy.Name, + "serverId": item.SourceHTTPFirewallPolicy.ServerId, + } + } + + // group + var sourceGroupMap = maps.Map{"id": 0} + if item.SourceHTTPFirewallRuleGroup != nil { + sourceGroupMap = maps.Map{ + "id": item.SourceHTTPFirewallRuleGroup.Id, + "name": item.SourceHTTPFirewallRuleGroup.Name, + } + } + + // set + var sourceSetMap = maps.Map{"id": 0} + if item.SourceHTTPFirewallRuleSet != nil { + sourceSetMap = maps.Map{ + "id": item.SourceHTTPFirewallRuleSet.Id, + "name": item.SourceHTTPFirewallRuleSet.Name, + } + } + + // server + var sourceServerMap = maps.Map{"id": 0} + if item.SourceServer != nil { + sourceServerMap = maps.Map{ + "id": item.SourceServer.Id, + "name": item.SourceServer.Name, + } + } + itemMaps = append(itemMaps, maps.Map{ "id": item.Id, "ipFrom": item.IpFrom, @@ -68,6 +105,10 @@ func (this *ListsAction) RunGet(params struct { "reason": item.Reason, "type": item.Type, "eventLevelName": firewallconfigs.FindFirewallEventLevelName(item.EventLevel), + "sourcePolicy": sourcePolicyMap, + "sourceGroup": sourceGroupMap, + "sourceSet": sourceSetMap, + "sourceServer": sourceServerMap, }) } this.Data["items"] = itemMaps diff --git a/internal/web/actions/default/servers/groups/group/settings/waf/ipadmin/allowList.go b/internal/web/actions/default/servers/groups/group/settings/waf/ipadmin/allowList.go index 78f248c4..3db9f4e2 100644 --- a/internal/web/actions/default/servers/groups/group/settings/waf/ipadmin/allowList.go +++ b/internal/web/actions/default/servers/groups/group/settings/waf/ipadmin/allowList.go @@ -70,6 +70,43 @@ func (this *AllowListAction) RunGet(params struct { expiredTime = timeutil.FormatTime("Y-m-d H:i:s", item.ExpiredAt) } + // policy + var sourcePolicyMap = maps.Map{"id": 0} + if item.SourceHTTPFirewallPolicy != nil { + sourcePolicyMap = maps.Map{ + "id": item.SourceHTTPFirewallPolicy.Id, + "name": item.SourceHTTPFirewallPolicy.Name, + "serverId": item.SourceHTTPFirewallPolicy.ServerId, + } + } + + // group + var sourceGroupMap = maps.Map{"id": 0} + if item.SourceHTTPFirewallRuleGroup != nil { + sourceGroupMap = maps.Map{ + "id": item.SourceHTTPFirewallRuleGroup.Id, + "name": item.SourceHTTPFirewallRuleGroup.Name, + } + } + + // set + var sourceSetMap = maps.Map{"id": 0} + if item.SourceHTTPFirewallRuleSet != nil { + sourceSetMap = maps.Map{ + "id": item.SourceHTTPFirewallRuleSet.Id, + "name": item.SourceHTTPFirewallRuleSet.Name, + } + } + + // server + var sourceServerMap = maps.Map{"id": 0} + if item.SourceServer != nil { + sourceServerMap = maps.Map{ + "id": item.SourceServer.Id, + "name": item.SourceServer.Name, + } + } + itemMaps = append(itemMaps, maps.Map{ "id": item.Id, "ipFrom": item.IpFrom, @@ -80,6 +117,10 @@ func (this *AllowListAction) RunGet(params struct { "type": item.Type, "isExpired": item.ExpiredAt > 0 && item.ExpiredAt < time.Now().Unix(), "eventLevelName": firewallconfigs.FindFirewallEventLevelName(item.EventLevel), + "sourcePolicy": sourcePolicyMap, + "sourceGroup": sourceGroupMap, + "sourceSet": sourceSetMap, + "sourceServer": sourceServerMap, }) } this.Data["items"] = itemMaps diff --git a/internal/web/actions/default/servers/groups/group/settings/waf/ipadmin/denyList.go b/internal/web/actions/default/servers/groups/group/settings/waf/ipadmin/denyList.go index 90dd0bc4..e41e6ca0 100644 --- a/internal/web/actions/default/servers/groups/group/settings/waf/ipadmin/denyList.go +++ b/internal/web/actions/default/servers/groups/group/settings/waf/ipadmin/denyList.go @@ -70,6 +70,43 @@ func (this *DenyListAction) RunGet(params struct { expiredTime = timeutil.FormatTime("Y-m-d H:i:s", item.ExpiredAt) } + // policy + var sourcePolicyMap = maps.Map{"id": 0} + if item.SourceHTTPFirewallPolicy != nil { + sourcePolicyMap = maps.Map{ + "id": item.SourceHTTPFirewallPolicy.Id, + "name": item.SourceHTTPFirewallPolicy.Name, + "serverId": item.SourceHTTPFirewallPolicy.ServerId, + } + } + + // group + var sourceGroupMap = maps.Map{"id": 0} + if item.SourceHTTPFirewallRuleGroup != nil { + sourceGroupMap = maps.Map{ + "id": item.SourceHTTPFirewallRuleGroup.Id, + "name": item.SourceHTTPFirewallRuleGroup.Name, + } + } + + // set + var sourceSetMap = maps.Map{"id": 0} + if item.SourceHTTPFirewallRuleSet != nil { + sourceSetMap = maps.Map{ + "id": item.SourceHTTPFirewallRuleSet.Id, + "name": item.SourceHTTPFirewallRuleSet.Name, + } + } + + // server + var sourceServerMap = maps.Map{"id": 0} + if item.SourceServer != nil { + sourceServerMap = maps.Map{ + "id": item.SourceServer.Id, + "name": item.SourceServer.Name, + } + } + itemMaps = append(itemMaps, maps.Map{ "id": item.Id, "ipFrom": item.IpFrom, @@ -80,6 +117,10 @@ func (this *DenyListAction) RunGet(params struct { "type": item.Type, "isExpired": item.ExpiredAt > 0 && item.ExpiredAt < time.Now().Unix(), "eventLevelName": firewallconfigs.FindFirewallEventLevelName(item.EventLevel), + "sourcePolicy": sourcePolicyMap, + "sourceGroup": sourceGroupMap, + "sourceSet": sourceSetMap, + "sourceServer": sourceServerMap, }) } this.Data["items"] = itemMaps diff --git a/internal/web/actions/default/servers/iplists/items.go b/internal/web/actions/default/servers/iplists/items.go index 4b5ae9c4..bfb208c0 100644 --- a/internal/web/actions/default/servers/iplists/items.go +++ b/internal/web/actions/default/servers/iplists/items.go @@ -62,6 +62,43 @@ func (this *ItemsAction) RunGet(params struct { expiredTime = timeutil.FormatTime("Y-m-d H:i:s", item.ExpiredAt) } + // policy + var sourcePolicyMap = maps.Map{"id": 0} + if item.SourceHTTPFirewallPolicy != nil { + sourcePolicyMap = maps.Map{ + "id": item.SourceHTTPFirewallPolicy.Id, + "name": item.SourceHTTPFirewallPolicy.Name, + "serverId": item.SourceHTTPFirewallPolicy.ServerId, + } + } + + // group + var sourceGroupMap = maps.Map{"id": 0} + if item.SourceHTTPFirewallRuleGroup != nil { + sourceGroupMap = maps.Map{ + "id": item.SourceHTTPFirewallRuleGroup.Id, + "name": item.SourceHTTPFirewallRuleGroup.Name, + } + } + + // set + var sourceSetMap = maps.Map{"id": 0} + if item.SourceHTTPFirewallRuleSet != nil { + sourceSetMap = maps.Map{ + "id": item.SourceHTTPFirewallRuleSet.Id, + "name": item.SourceHTTPFirewallRuleSet.Name, + } + } + + // server + var sourceServerMap = maps.Map{"id": 0} + if item.SourceServer != nil { + sourceServerMap = maps.Map{ + "id": item.SourceServer.Id, + "name": item.SourceServer.Name, + } + } + itemMaps = append(itemMaps, maps.Map{ "id": item.Id, "ipFrom": item.IpFrom, @@ -71,6 +108,10 @@ func (this *ItemsAction) RunGet(params struct { "reason": item.Reason, "type": item.Type, "eventLevelName": firewallconfigs.FindFirewallEventLevelName(item.EventLevel), + "sourcePolicy": sourcePolicyMap, + "sourceGroup": sourceGroupMap, + "sourceSet": sourceSetMap, + "sourceServer": sourceServerMap, }) } this.Data["items"] = itemMaps diff --git a/internal/web/actions/default/servers/server/settings/waf/ipadmin/allowList.go b/internal/web/actions/default/servers/server/settings/waf/ipadmin/allowList.go index 78f248c4..3db9f4e2 100644 --- a/internal/web/actions/default/servers/server/settings/waf/ipadmin/allowList.go +++ b/internal/web/actions/default/servers/server/settings/waf/ipadmin/allowList.go @@ -70,6 +70,43 @@ func (this *AllowListAction) RunGet(params struct { expiredTime = timeutil.FormatTime("Y-m-d H:i:s", item.ExpiredAt) } + // policy + var sourcePolicyMap = maps.Map{"id": 0} + if item.SourceHTTPFirewallPolicy != nil { + sourcePolicyMap = maps.Map{ + "id": item.SourceHTTPFirewallPolicy.Id, + "name": item.SourceHTTPFirewallPolicy.Name, + "serverId": item.SourceHTTPFirewallPolicy.ServerId, + } + } + + // group + var sourceGroupMap = maps.Map{"id": 0} + if item.SourceHTTPFirewallRuleGroup != nil { + sourceGroupMap = maps.Map{ + "id": item.SourceHTTPFirewallRuleGroup.Id, + "name": item.SourceHTTPFirewallRuleGroup.Name, + } + } + + // set + var sourceSetMap = maps.Map{"id": 0} + if item.SourceHTTPFirewallRuleSet != nil { + sourceSetMap = maps.Map{ + "id": item.SourceHTTPFirewallRuleSet.Id, + "name": item.SourceHTTPFirewallRuleSet.Name, + } + } + + // server + var sourceServerMap = maps.Map{"id": 0} + if item.SourceServer != nil { + sourceServerMap = maps.Map{ + "id": item.SourceServer.Id, + "name": item.SourceServer.Name, + } + } + itemMaps = append(itemMaps, maps.Map{ "id": item.Id, "ipFrom": item.IpFrom, @@ -80,6 +117,10 @@ func (this *AllowListAction) RunGet(params struct { "type": item.Type, "isExpired": item.ExpiredAt > 0 && item.ExpiredAt < time.Now().Unix(), "eventLevelName": firewallconfigs.FindFirewallEventLevelName(item.EventLevel), + "sourcePolicy": sourcePolicyMap, + "sourceGroup": sourceGroupMap, + "sourceSet": sourceSetMap, + "sourceServer": sourceServerMap, }) } this.Data["items"] = itemMaps diff --git a/internal/web/actions/default/servers/server/settings/waf/ipadmin/denyList.go b/internal/web/actions/default/servers/server/settings/waf/ipadmin/denyList.go index 90dd0bc4..e41e6ca0 100644 --- a/internal/web/actions/default/servers/server/settings/waf/ipadmin/denyList.go +++ b/internal/web/actions/default/servers/server/settings/waf/ipadmin/denyList.go @@ -70,6 +70,43 @@ func (this *DenyListAction) RunGet(params struct { expiredTime = timeutil.FormatTime("Y-m-d H:i:s", item.ExpiredAt) } + // policy + var sourcePolicyMap = maps.Map{"id": 0} + if item.SourceHTTPFirewallPolicy != nil { + sourcePolicyMap = maps.Map{ + "id": item.SourceHTTPFirewallPolicy.Id, + "name": item.SourceHTTPFirewallPolicy.Name, + "serverId": item.SourceHTTPFirewallPolicy.ServerId, + } + } + + // group + var sourceGroupMap = maps.Map{"id": 0} + if item.SourceHTTPFirewallRuleGroup != nil { + sourceGroupMap = maps.Map{ + "id": item.SourceHTTPFirewallRuleGroup.Id, + "name": item.SourceHTTPFirewallRuleGroup.Name, + } + } + + // set + var sourceSetMap = maps.Map{"id": 0} + if item.SourceHTTPFirewallRuleSet != nil { + sourceSetMap = maps.Map{ + "id": item.SourceHTTPFirewallRuleSet.Id, + "name": item.SourceHTTPFirewallRuleSet.Name, + } + } + + // server + var sourceServerMap = maps.Map{"id": 0} + if item.SourceServer != nil { + sourceServerMap = maps.Map{ + "id": item.SourceServer.Id, + "name": item.SourceServer.Name, + } + } + itemMaps = append(itemMaps, maps.Map{ "id": item.Id, "ipFrom": item.IpFrom, @@ -80,6 +117,10 @@ func (this *DenyListAction) RunGet(params struct { "type": item.Type, "isExpired": item.ExpiredAt > 0 && item.ExpiredAt < time.Now().Unix(), "eventLevelName": firewallconfigs.FindFirewallEventLevelName(item.EventLevel), + "sourcePolicy": sourcePolicyMap, + "sourceGroup": sourceGroupMap, + "sourceSet": sourceSetMap, + "sourceServer": sourceServerMap, }) } this.Data["items"] = itemMaps diff --git a/web/public/js/components/iplist/ip-list-table.js b/web/public/js/components/iplist/ip-list-table.js index 7f36fd1c..b64f10bd 100644 --- a/web/public/js/components/iplist/ip-list-table.js +++ b/web/public/js/components/iplist/ip-list-table.js @@ -32,43 +32,53 @@ Vue.component("ip-list-table", { 操作 - - - {{item.ipFrom}} - {{item.ipTo}} - * -
- 添加于 {{item.createdTime}} -
- - - IPv4 - IPv4 - IPv6 - 所有IP - - - {{item.eventLevelName}} - - - - -
- {{item.expiredTime}} -
- 已过期 -
-
- 不过期 - - - {{item.reason}} - - - - - 日志   - 修改   - 删除 - - + + + + {{item.ipFrom}} - {{item.ipTo}} + * +
+ 添加于 {{item.createdTime}} +
+ + + IPv4 + IPv4 + IPv6 + 所有IP + + + {{item.eventLevelName}} + - + + +
+ {{item.expiredTime}} +
+ 已过期 +
+
+ 不过期 + + + {{item.reason}} + - + +
+ {{item.sourceServer.name}} +
+
+ {{item.sourcePolicy.name}} » {{item.sourceGroup.name}} » {{item.sourceSet.name}} + {{item.sourcePolicy.name}} » {{item.sourceGroup.name}} » {{item.sourceSet.name}} +
+ + + 日志   + 修改   + 删除 + + + ` }) \ No newline at end of file