839 B
839 B
全局 JWT 中间件(F2a-10 / F2d-02)
日期: 2026-05-22
变更
server/api/auth_jwt.py:新增JwtAuthMiddleware,对所有/api/*请求在路由处理前校验 Bearer JWT;公开前缀见PUBLIC_PREFIXES(含/api/install/、/api/auth/logout)。server/main.py:在DbSessionMiddleware内层注册中间件(保证request.state.db可用)。get_current_admin:复用request.state.admin,避免重复查库。- 安装模式(无
.env)跳过 JWT 中间件,由InstallModeMiddleware返回 503。
纵深防御
路由层 Depends(get_current_admin) 保留;即使新路由漏挂 Depends,中间件仍会返回 401。
验证
pytest tests/test_step0_infrastructure.py::TestJWTAuth tests/test_nexus_v6.py::TestJWTAuth tests/test_security_unit.py -q