mirror of
https://github.com/TeaOSLab/EdgeAdmin.git
synced 2025-11-15 04:41:25 +08:00
可以在IP名单、访问日志中跳到对应的WAF规则集
This commit is contained in:
@@ -50,6 +50,7 @@ func (this *ViewPopupAction) RunGet(params struct {
|
|||||||
"policy": maps.Map{
|
"policy": maps.Map{
|
||||||
"id": policyResp.HttpFirewallPolicy.Id,
|
"id": policyResp.HttpFirewallPolicy.Id,
|
||||||
"name": policyResp.HttpFirewallPolicy.Name,
|
"name": policyResp.HttpFirewallPolicy.Name,
|
||||||
|
"serverId": policyResp.HttpFirewallPolicy.ServerId,
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
if accessLog.FirewallRuleGroupId > 0 {
|
if accessLog.FirewallRuleGroupId > 0 {
|
||||||
|
|||||||
@@ -165,15 +165,15 @@ Vue.component("ip-list-table", {
|
|||||||
<span v-if="item.reason.length > 0">{{item.reason}}</span>
|
<span v-if="item.reason.length > 0">{{item.reason}}</span>
|
||||||
<span v-else class="disabled">-</span>
|
<span v-else class="disabled">-</span>
|
||||||
|
|
||||||
|
<div v-if="item.sourceNode != null && item.sourceNode.id > 0" style="margin-top: 0.4em">
|
||||||
|
<a :href="'/clusters/cluster/node?clusterId=' + item.sourceNode.clusterId + '&nodeId=' + item.sourceNode.id"><span class="small"><i class="icon cloud"></i>{{item.sourceNode.name}}</span></a>
|
||||||
|
</div>
|
||||||
<div style="margin-top: 0.4em" v-if="item.sourceServer != null && item.sourceServer.id > 0">
|
<div style="margin-top: 0.4em" v-if="item.sourceServer != null && item.sourceServer.id > 0">
|
||||||
<a :href="'/servers/server?serverId=' + item.sourceServer.id" style="border: 0"><span class="small "><i class="icon clone outline"></i>{{item.sourceServer.name}}</span></a>
|
<a :href="'/servers/server?serverId=' + item.sourceServer.id" style="border: 0"><span class="small "><i class="icon clone outline"></i>{{item.sourceServer.name}}</span></a>
|
||||||
</div>
|
</div>
|
||||||
<div v-if="item.sourcePolicy != null && item.sourcePolicy.id > 0" style="margin-top: 0.4em">
|
<div v-if="item.sourcePolicy != null && item.sourcePolicy.id > 0" style="margin-top: 0.4em">
|
||||||
<a :href="'/servers/components/waf/group?firewallPolicyId=' + item.sourcePolicy.id + '&type=inbound&groupId=' + item.sourceGroup.id" v-if="item.sourcePolicy.serverId == 0"><span class="small "><i class="icon shield"></i>{{item.sourcePolicy.name}} » {{item.sourceGroup.name}} » {{item.sourceSet.name}}</span></a>
|
<a :href="'/servers/components/waf/group?firewallPolicyId=' + item.sourcePolicy.id + '&type=inbound&groupId=' + item.sourceGroup.id + '#set' + item.sourceSet.id" v-if="item.sourcePolicy.serverId == 0"><span class="small "><i class="icon shield"></i>{{item.sourcePolicy.name}} » {{item.sourceGroup.name}} » {{item.sourceSet.name}}</span></a>
|
||||||
<a :href="'/servers/server/settings/waf/group?serverId=' + item.sourcePolicy.serverId + '&firewallPolicyId=' + item.sourcePolicy.id + '&type=inbound&groupId=' + item.sourceGroup.id" v-if="item.sourcePolicy.serverId > 0"><span class="small "><i class="icon shield"></i> {{item.sourcePolicy.name}} » {{item.sourceGroup.name}} » {{item.sourceSet.name}}</span></a>
|
<a :href="'/servers/server/settings/waf/group?serverId=' + item.sourcePolicy.serverId + '&firewallPolicyId=' + item.sourcePolicy.id + '&type=inbound&groupId=' + item.sourceGroup.id + '#set' + item.sourceSet.id" v-if="item.sourcePolicy.serverId > 0"><span class="small "><i class="icon shield"></i> {{item.sourcePolicy.name}} » {{item.sourceGroup.name}} » {{item.sourceSet.name}}</span></a>
|
||||||
</div>
|
|
||||||
<div v-if="item.sourceNode != null && item.sourceNode.id > 0" style="margin-top: 0.4em">
|
|
||||||
<a :href="'/clusters/cluster/node?clusterId=' + item.sourceNode.clusterId + '&nodeId=' + item.sourceNode.id"><span class="small"><i class="icon cloud"></i>{{item.sourceNode.name}}</span></a>
|
|
||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
|
|||||||
@@ -46,7 +46,7 @@
|
|||||||
<tbody v-for="set in sets" :data-set-id="set.id">
|
<tbody v-for="set in sets" :data-set-id="set.id">
|
||||||
<tr>
|
<tr>
|
||||||
<td style="text-align: center;"><i class="icon bars handle grey"></i></td>
|
<td style="text-align: center;"><i class="icon bars handle grey"></i></td>
|
||||||
<td nowrap=""><a href="" @click.prevent="updateSet(set.id)"><span :class="{disabled:!set.isOn}">{{set.name}}</span> <i class="icon clone outline small"></i> </a>
|
<td nowrap=""><a :name="'set' + set.id"></a><a href="" @click.prevent="updateSet(set.id)"><span :class="{disabled:!set.isOn}">{{set.name}}</span> <i class="icon clone outline small"></i> </a>
|
||||||
<p style="margin-top:0.5em">
|
<p style="margin-top:0.5em">
|
||||||
<label-on :v-is-on="set.isOn"></label-on>
|
<label-on :v-is-on="set.isOn"></label-on>
|
||||||
</p>
|
</p>
|
||||||
|
|||||||
@@ -56,7 +56,9 @@
|
|||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr v-if="wafInfo != null && wafInfo.set != null">
|
<tr v-if="wafInfo != null && wafInfo.set != null">
|
||||||
<td class="color-border">WAF规则集:{{wafInfo.set.name}}</td>
|
<td class="color-border">WAF规则集:
|
||||||
|
<a :href="'/servers/components/waf/group?firewallPolicyId=' + accessLog.firewallPolicyId + '&type=inbound&groupId=' + accessLog.firewallRuleGroupId+ '#set' + accessLog.firewallRuleSetId" v-if="wafInfo.policy.serverId == 0" target="_parent">{{wafInfo.set.name}}</a>
|
||||||
|
<a :href="'/servers/server/settings/waf/group?serverId=' + accessLog.serverId + '&firewallPolicyId=' + accessLog.firewallPolicyId + '&type=inbound&groupId=' + accessLog.firewallRuleGroupId + '#set' + accessLog.firewallRuleSetId" target="_parent" v-if="wafInfo.policy.serverId > 0">{{wafInfo.set.name}}</a> </td>
|
||||||
<td></td>
|
<td></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr v-if="accessLog.errors != null && accessLog.errors.length > 0">
|
<tr v-if="accessLog.errors != null && accessLog.errors.length > 0">
|
||||||
|
|||||||
@@ -42,7 +42,7 @@
|
|||||||
<tbody v-for="set in sets" :data-set-id="set.id">
|
<tbody v-for="set in sets" :data-set-id="set.id">
|
||||||
<tr>
|
<tr>
|
||||||
<td style="text-align: center;"><i class="icon bars handle grey"></i> </td>
|
<td style="text-align: center;"><i class="icon bars handle grey"></i> </td>
|
||||||
<td nowrap=""><a href="" @click.prevent="updateSet(set.id)"><span :class="{disabled:!set.isOn}">{{set.name}}</span> <i class="icon clone outline small"></i></a>
|
<td nowrap=""><a :name="'set' + set.id"></a><a href="" @click.prevent="updateSet(set.id)"><span :class="{disabled:!set.isOn}">{{set.name}}</span> <i class="icon clone outline small"></i></a>
|
||||||
<p style="margin-top:0.5em">
|
<p style="margin-top:0.5em">
|
||||||
<label-on :v-is-on="set.isOn"></label-on>
|
<label-on :v-is-on="set.isOn"></label-on>
|
||||||
</p>
|
</p>
|
||||||
|
|||||||
Reference in New Issue
Block a user