fix: 修复detection、entity细节问题

This commit is contained in:
chenjinsong
2022-03-24 16:46:05 +08:00
parent 47a77d5870
commit 062af9b53d
10 changed files with 38 additions and 39 deletions

View File

@@ -93,12 +93,11 @@
.domain { .domain {
background: #EFF2F5; background: #EFF2F5;
border-radius: 2px; border-radius: 2px;
font-family: Roboto-Italic;
font-size: 14px; font-size: 14px;
color: #333333; color: #333333;
letter-spacing: 0; letter-spacing: 0;
line-height: 14px; line-height: 14px;
font-weight: 400; margin-left: 5px;
} }
} }

View File

@@ -67,7 +67,7 @@ const user = {
} }
}) })
} else { } else {
ElMessage.error('No menu') // TODO 国际化 ElMessage.error('No menu')
} }
}) })
}, },

View File

@@ -9,9 +9,9 @@
<div class="cn-detection__row"> <div class="cn-detection__row">
<div class="cn-detection__header" v-if="pageType === detectionPageType.securityEvent"> <div class="cn-detection__header" v-if="pageType === detectionPageType.securityEvent">
<i class="cn-icon cn-icon-attacker" ></i>{{detection.offenderIp || '-'}} <i class="cn-icon cn-icon-attacker" ></i>{{detection.offenderIp || '-'}}
<div v-if="detection.domain" class="domain">{{detection.domain}}</div>
<span class="line">-------</span> <span class="line">-------</span>
<span class="circle"></span> <span class="circle"></span>
<span class="domain">{{detection.domain }}</span>
<i class="cn-icon cn-icon-attacked" ></i>{{detection.victimIp || '-'}} <i class="cn-icon cn-icon-attacked" ></i>{{detection.victimIp || '-'}}
</div> </div>
<div class="cn-detection__header" v-else-if="pageType === detectionPageType.performanceEvent"> <div class="cn-detection__header" v-else-if="pageType === detectionPageType.performanceEvent">

View File

@@ -61,7 +61,7 @@
<div class="metric__column"> <div class="metric__column">
<div class="overview__title">{{$t('detections.metric')}}</div> <div class="overview__title">{{$t('detections.metric')}}</div>
<div class="overview__row"> <div class="overview__row">
<div class="row__content--metric ">{{detection.appName || '-'}}</div> <div class="row__content--metric ">{{detection.eventType || '-'}}</div>
</div> </div>
</div> </div>
<div class="metric__column"> <div class="metric__column">
@@ -194,6 +194,7 @@ export default {
domain: this.detection.domain, domain: this.detection.domain,
startTime: this.searchStartTime, startTime: this.searchStartTime,
endTime: this.searchEndTime, endTime: this.searchEndTime,
eventType: this.detection.eventType
}).then((response) => { }).then((response) => {
if (response.code === 200) { if (response.code === 200) {
resolve(response.data.result[0]) resolve(response.data.result[0])

View File

@@ -7,7 +7,7 @@
<span <span
class="row__content--link" class="row__content--link"
@click="goDetail('domain', computeSecondaryDomain(detection.domain))" @click="goDetail('domain', computeSecondaryDomain(detection.domain))"
>{{ computeSecondaryDomain(detection.domain) }}</span> >{{detection.domain}}</span>
<template v-if="detection.eventType === 'dns error'"> <template v-if="detection.eventType === 'dns error'">
<span> <span>
{{$t('detections.dnsQueryError')}} {{$t('detections.dnsQueryError')}}
@@ -52,7 +52,7 @@
<span>{{ $t('detections.viewDetailOf') }}</span> &nbsp; <span>{{ $t('detections.viewDetailOf') }}</span> &nbsp;
<span <span
class="row__content--link" class="row__content--link"
@click="goDetail('domain', computeSecondaryDomain(detection.domain))">{{computeSecondaryDomain(detection.domain)}}</span> @click="goDetail('domain', computeSecondaryDomain(detection.domain))">{{detection.domain}}</span>
</div> </div>
</div> </div>
<div class="overview__title">{{$t('detections.goToHunt')}}</div> <div class="overview__title">{{$t('detections.goToHunt')}}</div>
@@ -63,7 +63,7 @@
<div class="metric__column"> <div class="metric__column">
<div class="overview__title">{{$t('detections.metric')}}</div> <div class="overview__title">{{$t('detections.metric')}}</div>
<div class="overview__row"> <div class="overview__row">
<div class="row__content--metric ">{{detection.domain || '-'}}</div> <div class="row__content--metric ">{{detection.eventType || '-'}}</div>
</div> </div>
</div> </div>
<div class="metric__column"> <div class="metric__column">
@@ -226,6 +226,7 @@
domain: this.detection.domain, domain: this.detection.domain,
startTime: this.searchStartTime, startTime: this.searchStartTime,
endTime: this.searchEndTime, endTime: this.searchEndTime,
eventType: this.detection.eventType
}).then((response) => { }).then((response) => {
if (response.code === 200) { if (response.code === 200) {
resolve(response.data.result[0]) resolve(response.data.result[0])

View File

@@ -54,7 +54,7 @@
<div class="metric__column"> <div class="metric__column">
<div class="overview__title">{{$t('detections.metric')}}</div> <div class="overview__title">{{$t('detections.metric')}}</div>
<div class="overview__row"> <div class="overview__row">
<div class="row__content--metric ">{{detection.serverIp || '-'}}</div> <div class="row__content--metric ">{{detection.eventType || '-'}}</div>
</div> </div>
</div> </div>
<div class="metric__column"> <div class="metric__column">
@@ -76,7 +76,6 @@
</div> </div>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
</template> </template>
@@ -191,6 +190,7 @@ export default {
domain: this.detection.domain, domain: this.detection.domain,
startTime: this.searchStartTime, startTime: this.searchStartTime,
endTime: this.searchEndTime, endTime: this.searchEndTime,
eventType: this.detection.eventType
}).then((response) => { }).then((response) => {
if (response.code === 200) { if (response.code === 200) {
resolve(response.data.result[0]) resolve(response.data.result[0])

View File

@@ -8,14 +8,11 @@
<span <span
class="row__content--link" class="row__content--link"
@click="goDetail('ip', detection.victimIp)" @click="goDetail('ip', detection.victimIp)"
>{{ detection.victimIp }}</span >{{ detection.victimIp }}</span>&nbsp;
>&nbsp;
<span> <span>
{{$t('detection.commandAndControl')}} {{$t('detection.commandAndControl')}}
</span> </span>
<span class="row__content--link">{{ <span class="row__content--link" @click="goDetail('ip', basicInfo.iocValue)">{{basicInfo.iocValue || '-'}}</span></template
detection.iocValue
}}</span></template
> >
<template v-else> <template v-else>
<span <span
@@ -26,10 +23,11 @@
<span> <span>
{{$t('detection.payloadAndDelivery')}} {{$t('detection.payloadAndDelivery')}}
</span> </span>
<span class="row__content--link">{{ <span class="row__content--link"
detection.iocValue @click="goDetail('ip', basicInfo.iocValue)"
}}</span></template >{{
> basicInfo.iocValue
}}</span></template>
</div> </div>
</div> </div>
<div class="overview__title">Fields</div> <div class="overview__title">Fields</div>
@@ -96,9 +94,7 @@
<div class="row__content"> <div class="row__content">
<div <div
class="row__tag" class="row__tag"
:style="`background-color:${ :style="`background-color:${eventSeverityColor[basicInfo.domainReputationLevel]}`"
eventSeverityColor[basicInfo.domainReputationLevel]
}`"
> >
{{ basicInfo.domainReputationLevel || '-' }} {{ basicInfo.domainReputationLevel || '-' }}
</div> </div>
@@ -184,7 +180,7 @@
class="row__content--link" class="row__content--link"
@click="goDetail('ip', basicInfo.offenderIp)" @click="goDetail('ip', basicInfo.offenderIp)"
>{{ basicInfo.offenderIp }}</span >{{ basicInfo.offenderIp }}</span
> >&nbsp;&nbsp;
<span <span
class="row__content--link" class="row__content--link"
@click="goDetail('domain', basicInfo.domain)" @click="goDetail('domain', basicInfo.domain)"
@@ -378,14 +374,16 @@ export default {
}) })
}, },
goDetail (type, name) { goDetail (type, name) {
const { href } = this.$router.resolve({ if (name) {
path: '/entityDetail', const { href } = this.$router.resolve({
query: { path: '/entityDetail',
entityType: type, query: {
name: name entityType: type,
} name: name
}) }
window.open(href, '_blank') })
window.open(href, '_blank')
}
} }
}, },
mounted () { mounted () {

View File

@@ -135,7 +135,7 @@
<div class="overview__content"> <div class="overview__content">
<div class="overview__row"> <div class="overview__row">
<div class="row__label">{{$t('entities.recentAlert')}}</div> <div class="row__label">{{$t('entities.recentAlert')}}</div>
<div class="row__content">{{entityData.performanceNum || '-'}}</div> <div class="row__content">{{entityData.performanceNum}}</div>
</div> </div>
<div class="overview__row overview__row--small-font" v-for="(performance, index) in entityData.performanceList" :key="index"> <div class="overview__row overview__row--small-font" v-for="(performance, index) in entityData.performanceList" :key="index">
<div class="row__label row__label--width160">{{dayJs.tz(getMillisecond(performance.startTime)).format('YYYY-MM-DD HH:mm:ss') || '-'}}</div> <div class="row__label row__label--width160">{{dayJs.tz(getMillisecond(performance.startTime)).format('YYYY-MM-DD HH:mm:ss') || '-'}}</div>
@@ -155,7 +155,7 @@
<div class="overview__content"> <div class="overview__content">
<div class="overview__row"> <div class="overview__row">
<div class="row__label">{{$t('entities.recentSecurity')}}</div> <div class="row__label">{{$t('entities.recentSecurity')}}</div>
<div class="row__content">{{entityData.securityNum || '-'}}</div> <div class="row__content">{{entityData.securityNum}}</div>
</div> </div>
<div class="overview__row overview__row--small-font" v-for="(security, index) in entityData.securityList" :key="index"> <div class="overview__row overview__row--small-font" v-for="(security, index) in entityData.securityList" :key="index">
<div class="row__label row__label--width160">{{dayJs.tz(getMillisecond(security.startTime)).format('YYYY-MM-DD HH:mm:ss') || '-'}}</div> <div class="row__label row__label--width160">{{dayJs.tz(getMillisecond(security.startTime)).format('YYYY-MM-DD HH:mm:ss') || '-'}}</div>

View File

@@ -139,7 +139,7 @@
<div class="overview__content"> <div class="overview__content">
<div class="overview__row"> <div class="overview__row">
<div class="row__label">{{$t('entities.recentAlert')}}</div> <div class="row__label">{{$t('entities.recentAlert')}}</div>
<div class="row__content">{{entityData.performanceNum || '-'}}</div> <div class="row__content">{{entityData.performanceNum}}</div>
</div> </div>
<div class="overview__row overview__row--small-font" v-for="(performance, index) in entityData.performanceList" :key="index"> <div class="overview__row overview__row--small-font" v-for="(performance, index) in entityData.performanceList" :key="index">
<div class="row__label row__label--width160">{{dayJs.tz(getMillisecond(performance.startTime)).format('YYYY-MM-DD HH:mm:ss') || '-'}}</div> <div class="row__label row__label--width160">{{dayJs.tz(getMillisecond(performance.startTime)).format('YYYY-MM-DD HH:mm:ss') || '-'}}</div>
@@ -159,7 +159,7 @@
<div class="overview__content"> <div class="overview__content">
<div class="overview__row"> <div class="overview__row">
<div class="row__label">{{$t('entities.recentSecurity')}}</div> <div class="row__label">{{$t('entities.recentSecurity')}}</div>
<div class="row__content">{{entityData.securityNum || '-'}}</div> <div class="row__content">{{entityData.securityNum}}</div>
</div> </div>
<div class="overview__row overview__row--small-font" v-for="(security, i) in entityData.securityList" :key="i"> <div class="overview__row overview__row--small-font" v-for="(security, i) in entityData.securityList" :key="i">
<div class="row__label row__label--width160">{{dayJs.tz(getMillisecond(security.startTime)).format('YYYY-MM-DD HH:mm:ss') || '-'}}</div> <div class="row__label row__label--width160">{{dayJs.tz(getMillisecond(security.startTime)).format('YYYY-MM-DD HH:mm:ss') || '-'}}</div>

View File

@@ -123,7 +123,7 @@
<div class="overview__content"> <div class="overview__content">
<div class="overview__row"> <div class="overview__row">
<div class="row__label">{{$t('entities.recentAlert')}}</div> <div class="row__label">{{$t('entities.recentAlert')}}</div>
<div class="row__content">{{entityData.performanceNum || '-'}}</div> <div class="row__content">{{entityData.performanceNum}}</div>
</div> </div>
<div class="overview__row overview__row--small-font" v-for="(performance, index) in entityData.performanceList" :key="index"> <div class="overview__row overview__row--small-font" v-for="(performance, index) in entityData.performanceList" :key="index">
<div class="row__label row__label--width160">{{dayJs.tz(getMillisecond(performance.startTime)).format('YYYY-MM-DD HH:mm:ss') || '-'}}</div> <div class="row__label row__label--width160">{{dayJs.tz(getMillisecond(performance.startTime)).format('YYYY-MM-DD HH:mm:ss') || '-'}}</div>
@@ -143,7 +143,7 @@
<div class="overview__content"> <div class="overview__content">
<div class="overview__row"> <div class="overview__row">
<div class="row__label">{{$t('entities.recentSecurity')}}</div> <div class="row__label">{{$t('entities.recentSecurity')}}</div>
<div class="row__content">{{entityData.securityNum || '-'}}</div> <div class="row__content">{{entityData.securityNum}}</div>
</div> </div>
<div class="overview__row overview__row--small-font" v-for="(security, index) in entityData.securityList" :key="index"> <div class="overview__row overview__row--small-font" v-for="(security, index) in entityData.securityList" :key="index">
<div class="row__label row__label--width160">{{dayJs.tz(getMillisecond(security.startTime)).format('YYYY-MM-DD HH:mm:ss') || '-'}}</div> <div class="row__label row__label--width160">{{dayJs.tz(getMillisecond(security.startTime)).format('YYYY-MM-DD HH:mm:ss') || '-'}}</div>