31 lines
1.2 KiB
Markdown
31 lines
1.2 KiB
Markdown
# 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(映射不存在)
|