feat(admin): A1 管理后台收敛 Java 单后台完整实现并修复 guard 误拦内部令牌
Build Backend JAR / build (push) Has been cancelled
Build Backend JAR / build (push) Has been cancelled
- Java 补齐后台全部迁移差集:shopduplicatecheck 店铺数据重复检查模块(V108 扫描表+查询/扫描服务)、 PinyinAbbrUtil 拼音缩写、ImageHistory 接口调整为内部可用、AdminUser 支持内部令牌操作并放宽列表上限 - Flask 后台 admin_api.py 路由收敛转发 Java、admin.html/admin.js 适配新后台形态 - AdminApiGuardFilter 对可信 X-Internal-Token 放行(controller 自校验兜底),修复客户端仅凭 内部令牌调用 /api/admin/shop-manages/credential 被误拦 401 - 测试:AdminApiGuardFilterTest 补可信/假令牌用例;AdminUserServiceTest 补菜单权限 mock; shopduplicatecheck 新增查询/聚合/CSV 单测
This commit is contained in:
@@ -63,6 +63,12 @@ public class AdminApiGuardFilter extends OncePerRequestFilter {
|
||||
if ("OPTIONS".equalsIgnoreCase(request.getMethod())) {
|
||||
return true;
|
||||
}
|
||||
// 可信内部令牌(X-Internal-Token 匹配服务端配置)直接放行:让"仅凭令牌即鉴权"的
|
||||
// 内部端点(如 /api/admin/shop-manages/credential)由 controller 自校验令牌兜底,
|
||||
// 避免 guard 把它们误拦为 401。放行后仍可达 controller,不会裸露敏感端点。
|
||||
if (adminAuthSupport.isTrustedInternalToken(request)) {
|
||||
return true;
|
||||
}
|
||||
for (String prefix : exemptSet()) {
|
||||
if (uri.startsWith(prefix)) {
|
||||
return true;
|
||||
|
||||
Reference in New Issue
Block a user