47b2758fe860384928fa88415a82df9ee929702c
2026-09-11 实测确认(本机公网直连): http://47.110.241.161:18080/debug/request-info → 200 匿名返回实例元数据 http://api.aishufu.top:18080/debug/request-info → 200 https://api.aishufu.top/debug/request-info → 200 根因:SecurityConfig 是 anyRequest().permitAll(),唯一兜底过滤器 AdminApiGuardFilter 只覆盖 /api/admin/**(shouldNotFilter 对其它路径一律放行),而 modules/debug 两个控制器均无 @Profile/@ConditionalOn*/@PreAuthorize。其中 POST /debug/task-recovery/run-stale-finalize 是强制收尾指定 task 的写操作。 修法:不删端点(stale-task-finalize-guidelines.md 明确把该接口列为线上应急工具), 改为把 /debug 前缀纳入既有兜底过滤器——URL 不变、runbook 不破、复用已测鉴权逻辑, 应急调用方改用 X-Internal-Token 或管理员 JWT 即可通过。 另加 /debug 放行审计日志,便于事后追溯这类低频敏感调用。 单测 13 个全绿(新增 5 个):匿名调 /debug/request-info 与 run-stale-finalize 均被 401 拒绝、 带内部令牌可直达 controller、/debug 裸前缀纳入保护、/debugging 与 /debug-tools 等 同前缀不同段的路径不被误伤。
Description
No description provided
Languages
Java
70.5%
TypeScript
16.8%
Vue
11.9%
Python
0.5%
JavaScript
0.2%
Other
0.1%