feat: PSK 版本化管理 + DB 表 + 管理后台增删启禁
- V4 迁移: psks 表 (version, secret, description, is_active) - PskService: 启动导入 PAR_MEDIABOT_PSK → v1, verify 遍历所有活跃 PSK - HmacAuthInterceptor: PSK 签名优先验签,精简为 Bearer/PSK 双路径 - AdminController: GET/POST /psks + toggle 启禁 - AuthController: register/recover 改用 PskService 验证 - docker-compose.yml 新增 PAR_MEDIABOT_PSK 环境变量 mediabot 端只需: X-Signature = HMAC(PSK, 'email:ts')
This commit is contained in:
11
par-core/src/main/resources/db/migration/V4__psk_table.sql
Normal file
11
par-core/src/main/resources/db/migration/V4__psk_table.sql
Normal file
@@ -0,0 +1,11 @@
|
||||
-- PAR Flyway V4: PSK 版本管理
|
||||
CREATE TABLE psks (
|
||||
id BIGINT UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||||
version VARCHAR(20) NOT NULL COMMENT 'PSK 版本号(如 v1, v2)',
|
||||
secret VARCHAR(255) NOT NULL COMMENT 'PSK 密钥值',
|
||||
description VARCHAR(200) COMMENT '描述(哪个客户端在用)',
|
||||
is_active TINYINT(1) NOT NULL DEFAULT 1 COMMENT '是否启用',
|
||||
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
PRIMARY KEY (id),
|
||||
UNIQUE KEY uk_version (version)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='PSK 版本管理表';
|
||||
Reference in New Issue
Block a user