feat: 修复策略中trigger的时间选择列表,添加策略setting的国际化,添加setting的icon图标
This commit is contained in:
@@ -31,8 +31,12 @@
|
|||||||
line-height: 16px;
|
line-height: 16px;
|
||||||
margin-right: 10px;
|
margin-right: 10px;
|
||||||
|
|
||||||
|
.block-mode-icon1 {
|
||||||
|
font-size: 14px;
|
||||||
|
}
|
||||||
|
|
||||||
.block-mode-icon {
|
.block-mode-icon {
|
||||||
font-size: 16px;
|
font-size: 15px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,955 +0,0 @@
|
|||||||
@font-face {
|
|
||||||
font-family: "cn-icon"; /* Project id 2614877 */
|
|
||||||
src: url('iconfont.woff2?t=1697794140569') format('woff2'),
|
|
||||||
url('iconfont.woff?t=1697794140569') format('woff'),
|
|
||||||
url('iconfont.ttf?t=1697794140569') format('truetype');
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon {
|
|
||||||
font-family: "cn-icon" !important;
|
|
||||||
font-size: 16px;
|
|
||||||
font-style: normal;
|
|
||||||
-webkit-font-smoothing: antialiased;
|
|
||||||
-moz-osx-font-smoothing: grayscale;
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-behavior:before {
|
|
||||||
content: "\e61c";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-category-group:before {
|
|
||||||
content: "\e6c7";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-proportion:before {
|
|
||||||
content: "\e65a";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-tag1:before {
|
|
||||||
content: "\e774";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-Event1:before {
|
|
||||||
content: "\e80b";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-Score:before {
|
|
||||||
content: "\e80a";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-Intelligence:before {
|
|
||||||
content: "\e7ff";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-FQDN:before {
|
|
||||||
content: "\e800";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-Event:before {
|
|
||||||
content: "\e801";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-User-defined:before {
|
|
||||||
content: "\e804";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-jump-to:before {
|
|
||||||
content: "\e7fe";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-next-step:before {
|
|
||||||
content: "\e7fd";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-zoom-out:before {
|
|
||||||
content: "\e808";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-reset:before {
|
|
||||||
content: "\e809";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-to-default:before {
|
|
||||||
content: "\e805";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-pre-step:before {
|
|
||||||
content: "\e806";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-zoom-in:before {
|
|
||||||
content: "\e807";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-add-knowledge-base:before {
|
|
||||||
content: "\e802";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-update-knowledge-base:before {
|
|
||||||
content: "\e803";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-expand-continue:before {
|
|
||||||
content: "\e7fc";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-domain1:before {
|
|
||||||
content: "\e7fb";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-expand-relationship:before {
|
|
||||||
content: "\e7f8";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-resolve-ip:before {
|
|
||||||
content: "\e7f9";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-subdomain:before {
|
|
||||||
content: "\e7fa";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-graph:before {
|
|
||||||
content: "\e7f5";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-detail:before {
|
|
||||||
content: "\e7f6";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-tag:before {
|
|
||||||
content: "\e7f7";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-upload2:before {
|
|
||||||
content: "\e7f4";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-warn:before {
|
|
||||||
content: "\e7f3";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-providers:before {
|
|
||||||
content: "\e7f2";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-configure-policies:before {
|
|
||||||
content: "\e7f1";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-dns-insight:before {
|
|
||||||
content: "\e7ef";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-network-performance:before {
|
|
||||||
content: "\e7f0";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-copy:before {
|
|
||||||
content: "\e7ee";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-analysis:before {
|
|
||||||
content: "\e7ed";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-duration:before {
|
|
||||||
content: "\e7ec";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-select:before {
|
|
||||||
content: "\e7eb";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-expire-date:before {
|
|
||||||
content: "\e7d4";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-registry-email:before {
|
|
||||||
content: "\e7d5";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-geo-location:before {
|
|
||||||
content: "\e7d6";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-credit-rating:before {
|
|
||||||
content: "\e7d7";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-registration-date:before {
|
|
||||||
content: "\e7d8";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-app-full-name:before {
|
|
||||||
content: "\e7d9";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-description:before {
|
|
||||||
content: "\e7da";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-technology:before {
|
|
||||||
content: "\e7db";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-registrar:before {
|
|
||||||
content: "\e7dc";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-registry:before {
|
|
||||||
content: "\e7dd";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-operator:before {
|
|
||||||
content: "\e7de";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-sub-type:before {
|
|
||||||
content: "\e7df";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-app-name:before {
|
|
||||||
content: "\e7e0";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-registration-country:before {
|
|
||||||
content: "\e7e1";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-as:before {
|
|
||||||
content: "\e7e2";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-as-subnet:before {
|
|
||||||
content: "\e7e3";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-category2:before {
|
|
||||||
content: "\e7e4";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-domain-name-resolution:before {
|
|
||||||
content: "\e7e5";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-open-port:before {
|
|
||||||
content: "\e7e6";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-security-event:before {
|
|
||||||
content: "\e7e7";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-dns-ptr:before {
|
|
||||||
content: "\e7e8";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-information-aggregation:before {
|
|
||||||
content: "\e7e9";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-digital-certificate:before {
|
|
||||||
content: "\e7ea";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-save:before {
|
|
||||||
content: "\e7d1";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-edit1:before {
|
|
||||||
content: "\e7d2";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-revoke:before {
|
|
||||||
content: "\e7d3";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-administrations:before {
|
|
||||||
content: "\e7be";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-chart:before {
|
|
||||||
content: "\e7b8";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-user2:before {
|
|
||||||
content: "\e7b9";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-operation-log:before {
|
|
||||||
content: "\e7ba";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-role2:before {
|
|
||||||
content: "\e7bb";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-proxy:before {
|
|
||||||
content: "\e7bc";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-i18n:before {
|
|
||||||
content: "\e7bd";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-baocuo:before {
|
|
||||||
content: "\e7b7";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-a-SecurityEvent:before {
|
|
||||||
content: "\e7ae";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-bianji1:before {
|
|
||||||
content: "\e7af";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-a-PerformanceEvent:before {
|
|
||||||
content: "\e7b0";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-xinjian:before {
|
|
||||||
content: "\e7b1";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-a-RegulatoryRiskEvent:before {
|
|
||||||
content: "\e7b2";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-Delete1:before {
|
|
||||||
content: "\e7b3";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-a-EvaluatedTarget:before {
|
|
||||||
content: "\e7b4";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-a-GeneralSettings:before {
|
|
||||||
content: "\e7b5";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-Thresholds:before {
|
|
||||||
content: "\e7b6";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-good:before {
|
|
||||||
content: "\e7ad";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-events-type:before {
|
|
||||||
content: "\e7a5";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-events2:before {
|
|
||||||
content: "\e7a6";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-arrow-right2:before {
|
|
||||||
content: "\e7a7";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-traffic-overview:before {
|
|
||||||
content: "\e7a8";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-ingress:before {
|
|
||||||
content: "\e7a9";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-egress:before {
|
|
||||||
content: "\e7aa";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-close:before {
|
|
||||||
content: "\e7ab";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-search:before {
|
|
||||||
content: "\e7ac";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-setting2:before {
|
|
||||||
content: "\e7a4";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-xiala:before {
|
|
||||||
content: "\e7a3";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-Provider:before {
|
|
||||||
content: "\e7a1";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-APP1:before {
|
|
||||||
content: "\e7a2";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-social-network:before {
|
|
||||||
content: "\e79b";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-video:before {
|
|
||||||
content: "\e79c";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-voip:before {
|
|
||||||
content: "\e79d";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-email:before {
|
|
||||||
content: "\e79e";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-gaming:before {
|
|
||||||
content: "\e79f";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-file-sharing:before {
|
|
||||||
content: "\e7a0";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-location:before {
|
|
||||||
content: "\e798";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-events:before {
|
|
||||||
content: "\e799";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-overview:before {
|
|
||||||
content: "\e79a";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-detection1:before {
|
|
||||||
content: "\e792";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-entity:before {
|
|
||||||
content: "\e793";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-case:before {
|
|
||||||
content: "\e794";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-hunt:before {
|
|
||||||
content: "\e795";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-report1:before {
|
|
||||||
content: "\e796";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-knowledge-base:before {
|
|
||||||
content: "\e797";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-constant:before {
|
|
||||||
content: "\e78f";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-decline:before {
|
|
||||||
content: "\e790";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-rise1:before {
|
|
||||||
content: "\e791";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-sort:before {
|
|
||||||
content: "\e78c";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-a-NetworkAnalytics:before {
|
|
||||||
content: "\e786";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-navigation:before {
|
|
||||||
content: "\e787";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-up:before {
|
|
||||||
content: "\e788";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-left:before {
|
|
||||||
content: "\e789";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-a-NetworkPerformanceEvent:before {
|
|
||||||
content: "\e78a";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-refresh1:before {
|
|
||||||
content: "\e78b";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-a-DDosDetection:before {
|
|
||||||
content: "\e78d";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-Setting1:before {
|
|
||||||
content: "\e78e";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-add1:before {
|
|
||||||
content: "\e783";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-down:before {
|
|
||||||
content: "\e784";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-right:before {
|
|
||||||
content: "\e785";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-Data:before {
|
|
||||||
content: "\e782";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-a-:before {
|
|
||||||
content: "\e77b";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-a-1:before {
|
|
||||||
content: "\e781";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-bianji:before {
|
|
||||||
content: "\e77c";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-chuangjian:before {
|
|
||||||
content: "\e77d";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-shijian:before {
|
|
||||||
content: "\e77e";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-shijianjihua:before {
|
|
||||||
content: "\e77f";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-shanchu:before {
|
|
||||||
content: "\e780";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-a-allclear:before {
|
|
||||||
content: "\e779";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-org:before {
|
|
||||||
content: "\e770";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-role:before {
|
|
||||||
content: "\e771";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-os:before {
|
|
||||||
content: "\e772";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-software:before {
|
|
||||||
content: "\e773";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-report:before {
|
|
||||||
content: "\e76f";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-shezhi:before {
|
|
||||||
content: "\e76c";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-preview:before {
|
|
||||||
content: "\e76d";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-download2:before {
|
|
||||||
content: "\e76e";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-requests:before {
|
|
||||||
content: "\e76a";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-traffic:before {
|
|
||||||
content: "\e76b";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-domain2:before {
|
|
||||||
content: "\e767";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-ip2:before {
|
|
||||||
content: "\e768";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-app2:before {
|
|
||||||
content: "\e769";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-intercept:before {
|
|
||||||
content: "\e600";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-fraudulent-app:before {
|
|
||||||
content: "\e601";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-fraudulent-ip:before {
|
|
||||||
content: "\e602";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-fraudulent-domain:before {
|
|
||||||
content: "\e603";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-partly-cloudy:before {
|
|
||||||
content: "\e604";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-detection:before {
|
|
||||||
content: "\e766";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-filter:before {
|
|
||||||
content: "\e764";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-clear:before {
|
|
||||||
content: "\e765";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-time2:before {
|
|
||||||
content: "\e760";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-alert-level:before {
|
|
||||||
content: "\e763";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-windows:before {
|
|
||||||
content: "\e762";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-attacked:before {
|
|
||||||
content: "\e75e";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-attacker:before {
|
|
||||||
content: "\e75f";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-severity-level:before {
|
|
||||||
content: "\e75c";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-event-type:before {
|
|
||||||
content: "\e75d";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-trojan:before {
|
|
||||||
content: "\e761";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-mining-machine:before {
|
|
||||||
content: "\e758";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-percentage:before {
|
|
||||||
content: "\e759";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-mining-pool:before {
|
|
||||||
content: "\e75a";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-mining-traffic:before {
|
|
||||||
content: "\e75b";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-entity-alert:before {
|
|
||||||
content: "\e755";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-safe:before {
|
|
||||||
content: "\e756";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-city:before {
|
|
||||||
content: "\e757";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-search-advance:before {
|
|
||||||
content: "\e750";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-search-normal:before {
|
|
||||||
content: "\e751";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-blocks:before {
|
|
||||||
content: "\e752";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-list:before {
|
|
||||||
content: "\e753";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-help:before {
|
|
||||||
content: "\e754";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-active:before {
|
|
||||||
content: "\e74e";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-increase:before {
|
|
||||||
content: "\e74f";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-debug:before {
|
|
||||||
content: "\e606";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-override:before {
|
|
||||||
content: "\e68a";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-download1:before {
|
|
||||||
content: "\e6ab";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-upload1:before {
|
|
||||||
content: "\e6ac";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-position2:before {
|
|
||||||
content: "\e745";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-rise:before {
|
|
||||||
content: "\e743";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-fall:before {
|
|
||||||
content: "\e744";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-clear-cache:before {
|
|
||||||
content: "\e637";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-country:before {
|
|
||||||
content: "\e742";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-arrow-left-circle:before {
|
|
||||||
content: "\e741";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-credit:before {
|
|
||||||
content: "\e740";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-ip:before {
|
|
||||||
content: "\e73d";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-app:before {
|
|
||||||
content: "\e73e";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-domain:before {
|
|
||||||
content: "\e73f";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-cloud:before {
|
|
||||||
content: "\e73c";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-user:before {
|
|
||||||
content: "\e73a";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-pin:before {
|
|
||||||
content: "\e73b";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-view:before {
|
|
||||||
content: "\e702";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-more-arrow-down:before {
|
|
||||||
content: "\e739";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-edit:before {
|
|
||||||
content: "\e68c";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-delete:before {
|
|
||||||
content: "\e68f";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-more-dark:before {
|
|
||||||
content: "\e677";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-gear:before {
|
|
||||||
content: "\e694";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-add:before {
|
|
||||||
content: "\e738";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-arrow-up:before {
|
|
||||||
content: "\e732";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-arrow-down:before {
|
|
||||||
content: "\e737";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-arrow-left:before {
|
|
||||||
content: "\e735";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-arrow-right:before {
|
|
||||||
content: "\e736";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-id:before {
|
|
||||||
content: "\e734";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-position:before {
|
|
||||||
content: "\e72e";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-dns:before {
|
|
||||||
content: "\e72f";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-sub-category:before {
|
|
||||||
content: "\e730";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-risk:before {
|
|
||||||
content: "\e731";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-category:before {
|
|
||||||
content: "\e733";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-alert:before {
|
|
||||||
content: "\e72d";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-dropdown:before {
|
|
||||||
content: "\e724";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-download:before {
|
|
||||||
content: "\e725";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-check:before {
|
|
||||||
content: "\e726";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-refresh:before {
|
|
||||||
content: "\e727";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-language:before {
|
|
||||||
content: "\e728";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-more-light:before {
|
|
||||||
content: "\e729";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-style:before {
|
|
||||||
content: "\e72a";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-expand:before {
|
|
||||||
content: "\e72b";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-full-screen:before {
|
|
||||||
content: "\e72c";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-upload:before {
|
|
||||||
content: "\e71f";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-package-loss:before {
|
|
||||||
content: "\e720";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-http:before {
|
|
||||||
content: "\e721";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-time:before {
|
|
||||||
content: "\e722";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-ssl:before {
|
|
||||||
content: "\e723";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-root-domain:before {
|
|
||||||
content: "\e71d";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-doh-domain:before {
|
|
||||||
content: "\e71a";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-recursive-domain:before {
|
|
||||||
content: "\e71b";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-authoritative-domain:before {
|
|
||||||
content: "\e71c";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-top-level-domain:before {
|
|
||||||
content: "\e71e";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-dashboard:before {
|
|
||||||
content: "\e714";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-entities:before {
|
|
||||||
content: "\e715";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-incidents:before {
|
|
||||||
content: "\e716";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-artifacts-brower:before {
|
|
||||||
content: "\e717";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-setting:before {
|
|
||||||
content: "\e718";
|
|
||||||
}
|
|
||||||
|
|
||||||
.cn-icon-reports:before {
|
|
||||||
content: "\e719";
|
|
||||||
}
|
|
||||||
|
|
||||||
File diff suppressed because one or more lines are too long
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -4,34 +4,34 @@
|
|||||||
<div class="block-mode">
|
<div class="block-mode">
|
||||||
<!--todo 图标没有,后期换-->
|
<!--todo 图标没有,后期换-->
|
||||||
<div class="block-mode-left">
|
<div class="block-mode-left">
|
||||||
<i class="cn-icon cn-icon-setting2 block-mode-icon"></i>
|
<i class="cn-icon cn-icon-indicator-match block-mode-icon1"></i>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="block-mode-right">
|
<div class="block-mode-right" style="position:relative;">
|
||||||
<div class="block-mode-title">Indicator Match</div>
|
<div class="block-mode-title">{{ $t('detection.policy.indicatorMatch') }}</div>
|
||||||
<div class="block-mode-content">
|
<div class="block-mode-content">
|
||||||
Use indicators from intelligence sources to detect matching events and alerts.
|
{{ $t('detection.policy.indicatorMatchIntroduce') }}
|
||||||
|
<div v-if="language==='cn'" style="color: rgba(0,0,0,0)">0</div>
|
||||||
</div>
|
</div>
|
||||||
<div :class="settingObj.ruleType===detectionRuleType.indicator?'block-mode-btn-active':'block-mode-btn'"
|
<div :class="settingObj.ruleType===detectionRuleType.indicator?'block-mode-btn-active':'block-mode-btn'"
|
||||||
@click="selectMode(detectionRuleType.indicator)">select
|
@click="selectMode(detectionRuleType.indicator)">{{ $t('overall.select') }}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="block-mode" style="cursor: no-drop;">
|
<div class="block-mode" style="cursor: no-drop;">
|
||||||
<!--todo 图标没有,后期换-->
|
|
||||||
<div class="block-mode-left">
|
<div class="block-mode-left">
|
||||||
<i class="cn-icon cn-icon-setting2 block-mode-icon"></i>
|
<i class="cn-icon cn-icon-threshold block-mode-icon"></i>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="block-mode-right">
|
<div class="block-mode-right">
|
||||||
<div class="block-mode-title">Threshold</div>
|
<div class="block-mode-title">{{ $t('detection.policy.threshold') }}</div>
|
||||||
<div class="block-mode-content">
|
<div class="block-mode-content">
|
||||||
Aggregate query results to detect when number of matches exceeds threshold.
|
{{ $t('detection.policy.thresholdIntroduce') }}
|
||||||
</div>
|
</div>
|
||||||
<!--todo 当前版本暂时不可选择-->
|
<!--todo 当前版本暂时不可选择-->
|
||||||
<div style="cursor: no-drop;" :class="settingObj.ruleType===detectionRuleType.threshold?'block-mode-btn-active':'block-mode-btn'"
|
<div style="cursor: no-drop;" :class="settingObj.ruleType===detectionRuleType.threshold?'block-mode-btn-active':'block-mode-btn'">
|
||||||
>select
|
{{ $t('overall.select') }}
|
||||||
</div>
|
</div>
|
||||||
<!-- <div :class="settingObj.ruleType===detectionRuleType.threshold?'block-mode-btn-active':'block-mode-btn'"-->
|
<!-- <div :class="settingObj.ruleType===detectionRuleType.threshold?'block-mode-btn-active':'block-mode-btn'"-->
|
||||||
<!-- @click="selectMode(detectionRuleType.threshold)">select-->
|
<!-- @click="selectMode(detectionRuleType.threshold)">select-->
|
||||||
@@ -109,7 +109,7 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { detectionRuleType } from '@/utils/constants'
|
import { detectionRuleType, storageKey } from '@/utils/constants'
|
||||||
import { switchStatus } from '@/utils/tools'
|
import { switchStatus } from '@/utils/tools'
|
||||||
import { detectionUnitList } from '@/utils/static-data'
|
import { detectionUnitList } from '@/utils/static-data'
|
||||||
|
|
||||||
@@ -160,7 +160,8 @@ export default {
|
|||||||
trigger: 'blur'
|
trigger: 'blur'
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
},
|
||||||
|
language: 'en'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
@@ -183,6 +184,7 @@ export default {
|
|||||||
methods: {
|
methods: {
|
||||||
switchStatus,
|
switchStatus,
|
||||||
initData () {
|
initData () {
|
||||||
|
this.language = localStorage.getItem(storageKey.language) || 'en'
|
||||||
this.categoryList = detectionUnitList.categoryList
|
this.categoryList = detectionUnitList.categoryList
|
||||||
this.eventTypeList = detectionUnitList.eventTypeList
|
this.eventTypeList = detectionUnitList.eventTypeList
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -140,17 +140,17 @@ export const xAxisTimeRich = {
|
|||||||
|
|
||||||
function switchDateTypeByStr (str) {
|
function switchDateTypeByStr (str) {
|
||||||
switch (str) {
|
switch (str) {
|
||||||
case 'Y':
|
// case 'Y':
|
||||||
return 'years'
|
// return 'years'
|
||||||
case 'M':
|
// case 'M':
|
||||||
return 'months'
|
// return 'months'
|
||||||
case 'W':
|
// case 'W':
|
||||||
return 'weeks'
|
// return 'weeks'
|
||||||
case 'D':
|
case 'D':
|
||||||
return 'days'
|
return 'days'
|
||||||
case 'H':
|
case 'H':
|
||||||
return 'hours'
|
return 'hours'
|
||||||
case 'm':
|
case 'M':
|
||||||
return 'minutes'
|
return 'minutes'
|
||||||
case 'S':
|
case 'S':
|
||||||
return 'seconds'
|
return 'seconds'
|
||||||
@@ -159,18 +159,18 @@ function switchDateTypeByStr (str) {
|
|||||||
|
|
||||||
function switchValueByDateType (str) {
|
function switchValueByDateType (str) {
|
||||||
switch (str) {
|
switch (str) {
|
||||||
case 'years':
|
// case 'years':
|
||||||
return 'Y'
|
// return 'Y'
|
||||||
case 'months':
|
// case 'months':
|
||||||
return 'M'
|
// return 'M'
|
||||||
case 'weeks':
|
// case 'weeks':
|
||||||
return 'W'
|
// return 'W'
|
||||||
case 'days':
|
case 'days':
|
||||||
return 'D'
|
return 'D'
|
||||||
case 'hours':
|
case 'hours':
|
||||||
return 'H'
|
return 'H'
|
||||||
case 'minutes':
|
case 'minutes':
|
||||||
return 'm'
|
return 'M'
|
||||||
case 'seconds':
|
case 'seconds':
|
||||||
return 'S'
|
return 'S'
|
||||||
}
|
}
|
||||||
@@ -184,13 +184,9 @@ export function getTimeByDurations (str) {
|
|||||||
}
|
}
|
||||||
for (let i = 1; i < str.length; i++) {
|
for (let i = 1; i < str.length; i++) {
|
||||||
const item = str[i]
|
const item = str[i]
|
||||||
// P5M表示持续5个月,PT5M持续5分钟,T是位于时间分量之前的时间指示符,即T之前是年月周日,T之后是时分秒
|
// P5D表示持续5天,PT5M持续5分钟,T是位于时间分量之前的时间指示符,即T之前是年月周日,T之后是时分秒
|
||||||
if (isNaN(item) && item !== 'T') {
|
if (isNaN(item) && item !== 'T') {
|
||||||
if (item === 'M' && i < str.indexOf('T')) {
|
obj.type = switchDateTypeByStr(item)
|
||||||
obj.type = switchDateTypeByStr('m')
|
|
||||||
} else {
|
|
||||||
obj.type = switchDateTypeByStr(item)
|
|
||||||
}
|
|
||||||
} else if (!isNaN(item)) {
|
} else if (!isNaN(item)) {
|
||||||
obj.value += item
|
obj.value += item
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -476,9 +476,6 @@ export const detectionUnitList = {
|
|||||||
{ value: 'library name2', knowledgeId: 9, label: 'Library name2' }
|
{ value: 'library name2', knowledgeId: 9, label: 'Library name2' }
|
||||||
],
|
],
|
||||||
intervalList: [
|
intervalList: [
|
||||||
{ value: 'year', label: 'years' },
|
|
||||||
{ value: 'months', label: 'months' },
|
|
||||||
{ value: 'weeks', label: 'weeks' },
|
|
||||||
{ value: 'days', label: 'days' },
|
{ value: 'days', label: 'days' },
|
||||||
{ value: 'hours', label: 'hours' },
|
{ value: 'hours', label: 'hours' },
|
||||||
{ value: 'minutes', label: 'minutes' },
|
{ value: 'minutes', label: 'minutes' },
|
||||||
|
|||||||
@@ -82,7 +82,16 @@
|
|||||||
<el-form-item prop="resetInterval">
|
<el-form-item prop="resetInterval">
|
||||||
<el-input size="mini" v-model="triggerObj.resetInterval" oninput="value=value.replace(/[^\d]/g,'')"></el-input>
|
<el-input size="mini" v-model="triggerObj.resetInterval" oninput="value=value.replace(/[^\d]/g,'')"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<div>{{ triggerObj.intervalVal }}</div>
|
<el-form-item prop="resetIntervalVal">
|
||||||
|
<el-select v-model="triggerObj.resetIntervalVal" class="form-trigger__select" placeholder=" " size="mini">
|
||||||
|
<el-option
|
||||||
|
v-for="item in intervalList"
|
||||||
|
:key="item.value"
|
||||||
|
:label="item.label"
|
||||||
|
:value="item.value"
|
||||||
|
/>
|
||||||
|
</el-select>
|
||||||
|
</el-form-item>
|
||||||
</div>
|
</div>
|
||||||
</el-form>
|
</el-form>
|
||||||
|
|
||||||
@@ -144,6 +153,13 @@ export default {
|
|||||||
message: this.$t('validate.required'),
|
message: this.$t('validate.required'),
|
||||||
trigger: 'blur'
|
trigger: 'blur'
|
||||||
}
|
}
|
||||||
|
],
|
||||||
|
resetIntervalVal: [
|
||||||
|
{
|
||||||
|
required: true,
|
||||||
|
message: this.$t('validate.required'),
|
||||||
|
trigger: 'change'
|
||||||
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
intervalList: detectionUnitList.intervalList || [],
|
intervalList: detectionUnitList.intervalList || [],
|
||||||
@@ -174,6 +190,7 @@ export default {
|
|||||||
interval: '',
|
interval: '',
|
||||||
intervalVal: '',
|
intervalVal: '',
|
||||||
resetInterval: '',
|
resetInterval: '',
|
||||||
|
resetIntervalVal: '',
|
||||||
finishFlag: false
|
finishFlag: false
|
||||||
})
|
})
|
||||||
|
|
||||||
@@ -204,6 +221,7 @@ export default {
|
|||||||
this.triggerObj = this.$_.cloneDeep(this.editObj.ruleTriggerObj)
|
this.triggerObj = this.$_.cloneDeep(this.editObj.ruleTriggerObj)
|
||||||
this.triggerObj.intervalVal = getTimeByDurations(this.triggerObj.interval).type
|
this.triggerObj.intervalVal = getTimeByDurations(this.triggerObj.interval).type
|
||||||
this.triggerObj.interval = getTimeByDurations(this.triggerObj.interval).value
|
this.triggerObj.interval = getTimeByDurations(this.triggerObj.interval).value
|
||||||
|
this.triggerObj.resetIntervalVal = getTimeByDurations(this.triggerObj.resetInterval).type
|
||||||
this.triggerObj.resetInterval = getTimeByDurations(this.triggerObj.resetInterval).value
|
this.triggerObj.resetInterval = getTimeByDurations(this.triggerObj.resetInterval).value
|
||||||
this.activeNames = ['1', '2', '3']
|
this.activeNames = ['1', '2', '3']
|
||||||
} else {
|
} else {
|
||||||
@@ -262,8 +280,8 @@ export default {
|
|||||||
if (flag) {
|
if (flag) {
|
||||||
formObj.status = 1
|
formObj.status = 1
|
||||||
}
|
}
|
||||||
// 将时间转为参数所需,如5分钟转为PT5
|
// 将时间转为参数所需,如5分钟转为PT5M
|
||||||
formObj.ruleTrigger.resetInterval = getDurationsTimeByType(formObj.ruleTrigger.resetInterval, formObj.ruleTrigger.intervalVal)
|
formObj.ruleTrigger.resetInterval = getDurationsTimeByType(formObj.ruleTrigger.resetInterval, formObj.ruleTrigger.resetIntervalVal)
|
||||||
formObj.ruleTrigger.interval = getDurationsTimeByType(formObj.ruleTrigger.interval, formObj.ruleTrigger.intervalVal)
|
formObj.ruleTrigger.interval = getDurationsTimeByType(formObj.ruleTrigger.interval, formObj.ruleTrigger.intervalVal)
|
||||||
formObj.ruleTrigger.atLeast = parseInt(formObj.ruleTrigger.atLeast)
|
formObj.ruleTrigger.atLeast = parseInt(formObj.ruleTrigger.atLeast)
|
||||||
formObj.ruleTrigger = JSON.stringify(formObj.ruleTrigger)
|
formObj.ruleTrigger = JSON.stringify(formObj.ruleTrigger)
|
||||||
|
|||||||
Reference in New Issue
Block a user