This commit is contained in:
zlwu committed 2026-09-22 19:22:18 +08:00
1 parent 5fd0042068
commit 1e6dcb164c
94 files changed
+796 -312

No files matched your search

@@ -0,0 +1,30 @@
# P0:Swagger / Demo 模块下线整改说明
## 问题
1. **Swagger / api-docs 免登暴露**:`security.excludes` 放行 `/api-docs`、`/swagger-ui/**` 等,且 `springdoc.*.enabled=true`,扫描器可枚举全量接口。
2. **Demo 模块打入运行包**:`/demo/mail/**`、`/demo/queue/delayed/**` 等带 `@SaIgnore`,存在滥用发信等风险。
## 整改
### 1. 关闭并收回 Swagger 白名单
文件:`backend/ruoyi-admin/src/main/resources/application.yml`
- `springdoc.api-docs.enabled` → `false`
- `springdoc.swagger-ui.enabled` → `false`
- 从 `security.excludes` 移除全部 api-docs / swagger-ui / webjars 路径
### 2. 运行包不再引入 demo
- `backend/ruoyi-admin/pom.xml`:注释掉 `ruoyi-demo` 依赖
- 各业务模块 pom(hq/rs/cw/xg/zsjy/jcbt/xskh/bzrkh/aqbw):同步注释 `ruoyi-demo` 传递依赖,避免再次打入 admin 包
> 源码目录 `ruoyi-modules/ruoyi-demo` 仍保留,便于本地开发需要时再启用;默认构建/部署不再加载其 Controller。
## 验证
重启后端后:
1. 访问 `/prod-api/swagger-ui.html`、`/prod-api/api-docs` → 不可用或 404/鉴权失败
2. 访问 `/prod-api/demo/mail/sendSimpleMessage`、`/prod-api/demo/queue/delayed/subscribe` → 404(映射不存在)