--- name: session-20260623-1 description: 2026-06-23 第1次会话 — Cookie Token 兜底确认 + API 白名单跳过鉴权方案设计 metadata: type: session date: 2026-06-23 sessionNumber: 1 startTime: 2026-06-23T00:00:00+08:00 --- # 2026-06-23 第1次会话 ## 会话摘要 1. 用户询问网关是否支持从 Cookie 读取 Token 兜底,确认已有实现,无需改动 2. 用户提出新增"API 白名单跳过鉴权"需求,完成方案设计,计划已保存待后续实施 ## 关键操作 ### Cookie Token 兜底确认 - **做了什么**: 检查了 TokenAuthFilter.java、前端 auth.ts/request.ts 的完整链路 - **结论**: - `/zgapi/*` 路径:Authorization 头 → Cookie 兜底 ✅ 已有 - `/zgapi/v1/open/*` 路径:Authorization 头 → query 参数兜底 ✅ 已有,用 Cookie - Cookie 由前端登录后写入(domain=.zgitm.com, max-age=7200, SameSite=Lax) - **用户确认**: Open API 绝不用 Cookie,保持现状 ### API 白名单跳过鉴权方案设计 - **做了什么**: 完整调研了 TokenAuthFilter、ApiPermissionFilter、sys_api 表、SysApi 实体、前端 ApiForm/ApiList - **方案**: 扩展 `sys_api` 表新增 `skip_auth` 字段(TINYINT, 0=需鉴权/1=跳过),在 TokenAuthFilter 中增加 Caffeine 缓存查询 - **计划文件**: `C:\Users\Administrator\.claude\plans\valiant-nibbling-lake.md` ## 重要信息 - 方案涉及 8 个文件(2 新建 + 6 修改) - 核心逻辑:TokenAuthFilter 在返回 401 之前,先查 SkipAuthCacheService(Caffeine 5min TTL),匹配则放行 - 不改动 `/zgapi/v1/open/*` 路径 ## 待处理 - [ ] 执行 API 白名单跳过鉴权方案实施(计划已就绪,下次会话继续)