feat: 系统密钥管理模块(数据库加密存储)
后端: - 新增 system_secrets 表(AES-256-GCM 加密存储) - 新增 crypto.util.ts 加解密工具 - 新增 SecretService 共享服务(CRUD + 加解密) - 新增 AdminSecretController 管理端 API(仅超管) - API 返回值脱敏(*** + 最后4位) 前端(平台后台): - 新增系统密钥管理页面(按分组展示、CRUD 操作) - 侧边栏新增「系统密钥」菜单 管理员可在后台网页管理所有密钥,不再需要 SSH 到服务器改配置 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,13 @@
|
||||
-- 系统密钥管理表
|
||||
CREATE TABLE IF NOT EXISTS `system_secrets` (
|
||||
`id` bigint unsigned NOT NULL AUTO_INCREMENT,
|
||||
`secret_key` varchar(100) NOT NULL COMMENT '密钥名',
|
||||
`secret_value` text NOT NULL COMMENT '加密后的值',
|
||||
`description` varchar(200) DEFAULT NULL COMMENT '说明',
|
||||
`group_name` varchar(50) DEFAULT 'default' COMMENT '分组',
|
||||
`env` enum('all','prod','test') DEFAULT 'all' COMMENT '适用环境',
|
||||
`created_at` datetime(6) DEFAULT CURRENT_TIMESTAMP(6) COMMENT '创建时间',
|
||||
`updated_at` datetime(6) DEFAULT CURRENT_TIMESTAMP(6) ON UPDATE CURRENT_TIMESTAMP(6) COMMENT '更新时间',
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uk_secret_key_env` (`secret_key`, `env`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='系统密钥管理';
|
||||
Reference in New Issue
Block a user