fix(security): 分离 JWT 与数据加密密钥并新增启动安全体检
.env 中 JWT_SECRET 仍逐字节等于 .env.example 的示例值,且 DATA_ENCRYPTION_KEY 未设置、按 config.go 的回退逻辑实际等于 JWT_SECRET。任何见过仓库的人都能伪造 管理员 JWT,并解密库中全部 API Client / 回调密钥密文。 - JWT_SECRET 与 DATA_ENCRYPTION_KEY 改为各自独立的强随机值 - 新增 Config.SecurityWarnings():示例密钥 / 未分离 / release 下开调试日志均告警 - 新增 cmd/reencrypt_secrets:默认只预演,-apply 才写库;幂等,坏数据不中断整轮 - 新增 docs/密钥轮换说明.md;.gitignore 忽略 .env.bak* - release 模式下关闭 OPEN_API_DEBUG
This commit is contained in:
@@ -2,6 +2,10 @@
|
||||
.env
|
||||
.env.local
|
||||
.env.*.local
|
||||
# 密钥轮换时的本地备份,含真实密钥,绝不能入库
|
||||
.env.bak
|
||||
.env.bak.*
|
||||
.env.*.bak
|
||||
backend/.env
|
||||
frontend/.env
|
||||
!.env.example
|
||||
|
||||
Reference in New Issue
Block a user