diff --git a/web/src/api/index.js b/web/src/api/index.js
index eaa884c..8b7dcaf 100644
--- a/web/src/api/index.js
+++ b/web/src/api/index.js
@@ -45,7 +45,11 @@ export default {
users: {
list: () => api.get('/admin/accounts'),
setTrustLevel: (id, level) => api.post(`/admin/accounts/${id}/trust-level`, null, { params: { level } }),
-
+ },
+ psks: {
+ list: () => api.get('/admin/psks'),
+ add: (data) => api.post('/admin/psks', data),
+ toggle: (id) => api.post(`/admin/psks/${id}/toggle`)
},
health: () => api.get('/health', { baseURL: '' })
}
diff --git a/web/src/router/index.js b/web/src/router/index.js
index 1c0fe64..f702deb 100644
--- a/web/src/router/index.js
+++ b/web/src/router/index.js
@@ -35,6 +35,12 @@ const routes = [
name: 'Users',
component: () => import('../views/Users.vue'),
meta: { title: '用户管理' }
+ },
+ {
+ path: 'psks',
+ name: 'Psks',
+ component: () => import('../views/Psks.vue'),
+ meta: { title: 'PSK 管理' }
}
]
}
diff --git a/web/src/views/Layout.vue b/web/src/views/Layout.vue
index 6084447..8f2e027 100644
--- a/web/src/views/Layout.vue
+++ b/web/src/views/Layout.vue
@@ -26,6 +26,10 @@
用户管理
+
+
+ PSK 管理
+
diff --git a/web/src/views/Psks.vue b/web/src/views/Psks.vue
new file mode 100644
index 0000000..f20cdba
--- /dev/null
+++ b/web/src/views/Psks.vue
@@ -0,0 +1,204 @@
+
+
+
+
+
+
+
+ PSK(预共享密钥)用于外部客户端(如 mediabot)接入认证。
+ 每个 PSK 生成后需将密钥分发给客户端配置使用。
+
+
+
+
+
+
+
+
+
+ {{ '•'.repeat(32) }}
+ {{ row.secret }}
+
+ {{ row.showSecret ? '隐藏' : '显示' }}
+
+ 复制
+
+
+
+
+ {{ row.description || '-' }}
+
+
+
+
+
+ {{ row.isActive ? '启用' : '禁用' }}
+
+
+
+
+
+
+
+
+
+ {{ row.isActive ? '禁用' : '启用' }}
+
+
+
+
+
+
+
+
+
+
+
+
+ 唯一标识,不可与已有版本重复
+
+
+
+
+
+
+
+ 随机生成
+
+
+
+
+ 取消
+ 生成
+
+
+
+
+
+
+
+