feat: 添加安全仪表板前端页面
- 新增 SecurityPage.vue: 统计卡片、威胁事件表格、封禁管理、风险查询 - 新增 api/security.js: 安全相关API封装 - 路由添加 /security 页面 - 侧边栏添加"安全防护"菜单项 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -1,34 +1,34 @@
|
||||
{
|
||||
"_email-BsKBHU5S.js": {
|
||||
"file": "assets/email-BsKBHU5S.js",
|
||||
"_email-DoKk83fr.js": {
|
||||
"file": "assets/email-DoKk83fr.js",
|
||||
"name": "email",
|
||||
"imports": [
|
||||
"index.html"
|
||||
]
|
||||
},
|
||||
"_tasks-DpslJtm_.js": {
|
||||
"file": "assets/tasks-DpslJtm_.js",
|
||||
"_tasks-Bgkd54ac.js": {
|
||||
"file": "assets/tasks-Bgkd54ac.js",
|
||||
"name": "tasks",
|
||||
"imports": [
|
||||
"index.html"
|
||||
]
|
||||
},
|
||||
"_update-DcFD-YxU.js": {
|
||||
"file": "assets/update-DcFD-YxU.js",
|
||||
"_update-BVJ0Pp6O.js": {
|
||||
"file": "assets/update-BVJ0Pp6O.js",
|
||||
"name": "update",
|
||||
"imports": [
|
||||
"index.html"
|
||||
]
|
||||
},
|
||||
"_users-CC9BckjT.js": {
|
||||
"file": "assets/users-CC9BckjT.js",
|
||||
"_users-Bw5HW1mw.js": {
|
||||
"file": "assets/users-Bw5HW1mw.js",
|
||||
"name": "users",
|
||||
"imports": [
|
||||
"index.html"
|
||||
]
|
||||
},
|
||||
"index.html": {
|
||||
"file": "assets/index-CdjS44Uj.js",
|
||||
"file": "assets/index-CDhtYQo-.js",
|
||||
"name": "index",
|
||||
"src": "index.html",
|
||||
"isEntry": true,
|
||||
@@ -39,15 +39,16 @@
|
||||
"src/pages/LogsPage.vue",
|
||||
"src/pages/AnnouncementsPage.vue",
|
||||
"src/pages/EmailPage.vue",
|
||||
"src/pages/SecurityPage.vue",
|
||||
"src/pages/SystemPage.vue",
|
||||
"src/pages/SettingsPage.vue"
|
||||
],
|
||||
"css": [
|
||||
"assets/index-EWm4DZW8.css"
|
||||
"assets/index-DiIt7W4Z.css"
|
||||
]
|
||||
},
|
||||
"src/pages/AnnouncementsPage.vue": {
|
||||
"file": "assets/AnnouncementsPage-Djmq3Wb7.js",
|
||||
"file": "assets/AnnouncementsPage-BSLa6sED.js",
|
||||
"name": "AnnouncementsPage",
|
||||
"src": "src/pages/AnnouncementsPage.vue",
|
||||
"isDynamicEntry": true,
|
||||
@@ -59,12 +60,12 @@
|
||||
]
|
||||
},
|
||||
"src/pages/EmailPage.vue": {
|
||||
"file": "assets/EmailPage-q6nJlTue.js",
|
||||
"file": "assets/EmailPage-BHdschU6.js",
|
||||
"name": "EmailPage",
|
||||
"src": "src/pages/EmailPage.vue",
|
||||
"isDynamicEntry": true,
|
||||
"imports": [
|
||||
"_email-BsKBHU5S.js",
|
||||
"_email-DoKk83fr.js",
|
||||
"index.html"
|
||||
],
|
||||
"css": [
|
||||
@@ -72,7 +73,7 @@
|
||||
]
|
||||
},
|
||||
"src/pages/FeedbacksPage.vue": {
|
||||
"file": "assets/FeedbacksPage-Drw6uvSR.js",
|
||||
"file": "assets/FeedbacksPage-CLu2KtuG.js",
|
||||
"name": "FeedbacksPage",
|
||||
"src": "src/pages/FeedbacksPage.vue",
|
||||
"isDynamicEntry": true,
|
||||
@@ -84,13 +85,13 @@
|
||||
]
|
||||
},
|
||||
"src/pages/LogsPage.vue": {
|
||||
"file": "assets/LogsPage-DQd9IS3I.js",
|
||||
"file": "assets/LogsPage-CbeqOQSe.js",
|
||||
"name": "LogsPage",
|
||||
"src": "src/pages/LogsPage.vue",
|
||||
"isDynamicEntry": true,
|
||||
"imports": [
|
||||
"_users-CC9BckjT.js",
|
||||
"_tasks-DpslJtm_.js",
|
||||
"_users-Bw5HW1mw.js",
|
||||
"_tasks-Bgkd54ac.js",
|
||||
"index.html"
|
||||
],
|
||||
"css": [
|
||||
@@ -98,22 +99,34 @@
|
||||
]
|
||||
},
|
||||
"src/pages/ReportPage.vue": {
|
||||
"file": "assets/ReportPage-Dnk3wsl3.js",
|
||||
"file": "assets/ReportPage-DVC8Kawd.js",
|
||||
"name": "ReportPage",
|
||||
"src": "src/pages/ReportPage.vue",
|
||||
"isDynamicEntry": true,
|
||||
"imports": [
|
||||
"index.html",
|
||||
"_email-BsKBHU5S.js",
|
||||
"_tasks-DpslJtm_.js",
|
||||
"_update-DcFD-YxU.js"
|
||||
"_email-DoKk83fr.js",
|
||||
"_tasks-Bgkd54ac.js",
|
||||
"_update-BVJ0Pp6O.js"
|
||||
],
|
||||
"css": [
|
||||
"assets/ReportPage-TpqQWWvU.css"
|
||||
]
|
||||
},
|
||||
"src/pages/SecurityPage.vue": {
|
||||
"file": "assets/SecurityPage-CuXCrXIZ.js",
|
||||
"name": "SecurityPage",
|
||||
"src": "src/pages/SecurityPage.vue",
|
||||
"isDynamicEntry": true,
|
||||
"imports": [
|
||||
"index.html"
|
||||
],
|
||||
"css": [
|
||||
"assets/SecurityPage-CH3QeiaV.css"
|
||||
]
|
||||
},
|
||||
"src/pages/SettingsPage.vue": {
|
||||
"file": "assets/SettingsPage-YOW1Apwk.js",
|
||||
"file": "assets/SettingsPage-cKC6DywW.js",
|
||||
"name": "SettingsPage",
|
||||
"src": "src/pages/SettingsPage.vue",
|
||||
"isDynamicEntry": true,
|
||||
@@ -125,12 +138,12 @@
|
||||
]
|
||||
},
|
||||
"src/pages/SystemPage.vue": {
|
||||
"file": "assets/SystemPage-DCcH_SAQ.js",
|
||||
"file": "assets/SystemPage-2XepJLfC.js",
|
||||
"name": "SystemPage",
|
||||
"src": "src/pages/SystemPage.vue",
|
||||
"isDynamicEntry": true,
|
||||
"imports": [
|
||||
"_update-DcFD-YxU.js",
|
||||
"_update-BVJ0Pp6O.js",
|
||||
"index.html"
|
||||
],
|
||||
"css": [
|
||||
@@ -138,12 +151,12 @@
|
||||
]
|
||||
},
|
||||
"src/pages/UsersPage.vue": {
|
||||
"file": "assets/UsersPage-DhTO_5zp.js",
|
||||
"file": "assets/UsersPage-CGNuB954.js",
|
||||
"name": "UsersPage",
|
||||
"src": "src/pages/UsersPage.vue",
|
||||
"isDynamicEntry": true,
|
||||
"imports": [
|
||||
"_users-CC9BckjT.js",
|
||||
"_users-Bw5HW1mw.js",
|
||||
"index.html"
|
||||
],
|
||||
"css": [
|
||||
|
||||
Reference in New Issue
Block a user