security: 移除硬编码微信小程序 appId/appSecret,改为只读配置+缺失即失败

- 后端不再兜底内置 appId/appSecret,缺失时 jscode2session/手机号/支付/内容审核等接口明确拒绝(fail-closed)
- 建表种子改为空值;启动自愈由「写入占位值」改为「清空历史占位值」,杜绝误用非本小程序 appId(40037 根因)
- 后台/引导文案去除具体 AppID;文档补充 WX_APP_ID/WX_APP_SECRET 说明
- 新增回归护栏 wechat-appid-config-hardening.spec.ts(87 套件/636 用例全绿);HTTP 冒烟 4/4 验证缺失即失败
这个提交包含在:
xcbyy
2026-10-19 10:33:31 +08:00
父节点 584e526bca
当前提交 01823a1db4
共有 6 个文件被更改,包括 77 次插入 和 28 次删除

查看文件

@@ -28,6 +28,11 @@ MYSQL_DATABASE=peiwan
# 可选:跨域白名单(逗号分隔;默认仅同源可用,小程序/服务端调用不受影响)
# CORS_ORIGINS=https://admin.example.com,https://h5.example.com
# 微信小程序凭证(无内置兜底值:不配则"微信登录换 openid / 内容审核 / 订阅消息 / 支付"相关接口直接拒绝)
# 也可在后台「平台配置 → 微信支付商户配置」填写(后台优先于环境变量)
# WX_APP_ID=wx****************
# WX_APP_SECRET=<32位小程序 AppSecret>
# 可选:微信(若已在后台"微信支付配置"页填写,则无需在这里重复;后台配置优先)
# WX_APP_ID=...
# WX_APP_SECRET=...