# 工作日结_2026-09-26 ## 一、今天做了什么 ### 1. 检查同事最近提交与部署包安全 - 公司 gitea `main` 与本地一致(`ecf2b3c`),09-24~09-26 无新提交;同事最近两条是 09-23 的 `e5faa88`、`3b68e9e`。服务器实为 Gitblit(无可用 REST API),以 `git ls-remote` 为准。 - 检查 `E:\试验\traffic-audit-deploy-20260913`: - 外层 `backend/application.yml` 配的是 `127.0.0.1:3306/traffic_audit`、root、密码占位符、`api-key: ""`(干净); - **但 jar 内置 `BOOT-INF/classes/application.yml` 带真实密钥**(DeepSeek key、本机库口令 3308/root/123456、JWT 密钥)。 - git 层面是干净的:`application.yml` 与 `_shots/` 都被 gitignore,`git grep`/`git log -S` 均无命中。 ### 2. 配置分层改造(打包去密) - 进 jar 的 `src/main/resources/application.yml` 全部改为占位符(`${TRAFFIC_DB_*}`、`${DEEPSEEK_API_KEY:}`、`${TRAFFIC_JWT_SECRET:...}`); - 本机真实值移到 `traffic-audit-server/config/application.yml`(Spring 的 `file:./config/` 优先级更高),并加入 `.gitignore`; - `docs/打包部署说明.md` 增加"密钥与配置"一节(分层表 + 打包前自查 + 部署机换 key + 轮换步骤)。 ### 3. 验证 - 后端启动 OK;登录成功(证明库口令取自本机覆盖文件,否则占位符空口令连不上);`/api/llm/chat` 返回"收到"(证明 DeepSeek key 取自本机覆盖文件); - `git grep` 确认跟踪文件中无 `sk-` 密钥;仓库内两份部署模板均为占位版。 ## 二、测试结果摘要 - 报告:`docs/功能测试报告/功能测试报告_密钥外部化与打包去密_2026-09-26.md`(7 条用例全通过)。 ## 三、遗留问题与待办 1. **【需用户操作】轮换已泄露的 DeepSeek key**:控制台新建 key → 删除旧 key → 部署机外部 `application.yml` 填新 key → 重启验证。旧 jar 无法收回,轮换是唯一根治手段。 2. 本机数据库 root 口令(123456)同样在旧 jar 里,建议部署机换口令。 3. 下次重新打包给部署机时,建议按 `打包部署说明.md` 的自查步骤确认 jar 内无真实值,并顺带同步部署包内的旧母版(P2-5)。 4. 项目其它遗留(P0/P1/P2)见 `docs/交接文档_2026-09-21.md` 第 4 节与 `docs/交接文档_2026-09-23.md`。 ## 四、明天计划 1. 视用户安排推进 P0:亿元投资项目按月追列(P0-2)、导出前基数体检 + 缺失清单页(P0-3)、2026-06/09 母版(P0-4)。 2. 汇总大表 304 格「2025 累计列少加 7、8 月」清空(业务已确认口径)。