Files
railwaysystem/docs/reports/integrated-acceptance/FINAL_PHASE1_20260917_101044/release-configuration-review.md
T

3.2 KiB
Raw Blame History

生产发布配置与变更审查报告 (Release Configuration Review)

  • 报告标识: RELEASE_CONFIG_REVIEW_R4
  • 对比基线: qa/integrated-acceptance-20260916 vs origin/feat/cicd-pipeline
  • 门禁结果:
    • QA_ONLY_RUNTIME_CONFIG_COUNT = 0
    • PRODUCTION_CONFIG_BLOCKER_COUNT = 0

1. 核心配置文件安全分类矩阵

依据发布安全规范,对系统涉及运行时的配置文件进行了逐项审查与生产解耦改造:

配置文件 原 QA 状态 最终发布状态 安全分类 改造说明
application-druid.yml 硬编码 railwaysystem_integrated_qa_20260916 与密码 采用 ${SPRING_DATASOURCE_DRUID_MASTER_URL:...} 环境变量驱动,提供生产标准兜底 SAFE_FOR_RELEASE 彻底剥离 QA 数据库名称与明文凭证
application.yml 包含 RuoYi 基础系统通用配置 保持生产通用配置,XSS/防盗链开关合规 SAFE_FOR_RELEASE 无硬编码私网 IP 或敏感信息
DmsProperties.java DMS 默认配置 enabled: false (安全默认),baseUrl: https://dms.dmsiot.com,AppId/Secret 为空由环境变量注入 SAFE_FOR_RELEASE 零网络启动,严禁生产未授权调用
build_ui/src/config/index.js 遗留大屏端口与明文测试密码 统一改造为 process.env.VUE_APP_DP_* 环境变量驱动,默认空字符串,并增加前端防御拦截 SAFE_FOR_RELEASE 消除控制台网络报错隐患
build_ui/.env.production 生产环境前端环境变量 VUE_APP_BASE_API = '/prod-api', VUE_APP_TITLE = SYFJGYD学员管理系统 SAFE_FOR_RELEASE 统一正式系统名称,符合标准生产反向代理结构
scripts/qa/* 综合验收自动化测试套件与脚本 保留于源码仓库供持续回归使用,未被打包进 ruoyi-admin.jar 运行时类路径 QA_ONLY 测试资产隔离,不影响生产运行时包体

2. 生产发布代码差异 (Diff Categories) 总结

对比 origin/feat/cicd-pipeline,本次综合验收合并沉淀的生产级代码演进包括:

  1. R3 智能门禁生命周期管理 (ruoyi-train):
    • 门锁授权全生命周期(授权下发、回收、状态同步、单次凭证查看安全防护);
    • 外部 DMS 契约适配与容灾补偿调度。
  2. 学员住宿与调宿体系 (Accommodation):
    • 房间床位分配、排他性校验、先授新后销旧的一致性调宿逻辑。
  3. 基于角色的精细化访问控制 (RBAC & Security):
    • 教师工作台专属 API、学员个人培训中心专属 API;
    • 严格的防水平越权 (IDOR) 鉴权注解与全局统一异常语义映射。
  4. 前端用户体验与安全加固 (build_ui):
    • 教师/学员专属响应式工作台视图;
    • Axios 请求拦截器与错误处理链路健壮性增强;
    • 统一系统正式名称为“SYFJGYD学员管理系统”。
  5. 缺陷修复与契约收敛:
    • 修复空指针、跨模块循环依赖及特定场景下的重复数据缺陷。

3. 结论

生产打包环境已完全实现配置与代码的分离(12-Factor 原则),不存在任何阻塞生产打包与安全合规的配置硬编码。