1.2 KiB
1.2 KiB
P0:Swagger / Demo 模块下线整改说明
问题
- Swagger / api-docs 免登暴露:
security.excludes放行/api-docs、/swagger-ui/**等,且springdoc.*.enabled=true,扫描器可枚举全量接口。 - Demo 模块打入运行包:
/demo/mail/**、/demo/queue/delayed/**等带@SaIgnore,存在滥用发信等风险。
整改
1. 关闭并收回 Swagger 白名单
文件:backend/ruoyi-admin/src/main/resources/application.yml
springdoc.api-docs.enabled→falsespringdoc.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。
验证
重启后端后:
- 访问
/prod-api/swagger-ui.html、/prod-api/api-docs→ 不可用或 404/鉴权失败 - 访问
/prod-api/demo/mail/sendSimpleMessage、/prod-api/demo/queue/delayed/subscribe→ 404(映射不存在)