JWT 天然无状态,也带来失效难题
JWT 的优点是后端不用每次查会话,缺点是签发后在过期前天然有效。用户退出登录、管理员禁用账号、修改密码后,如果系统不做额外校验,旧 Token 可能继续访问接口。这对后台管理系统尤其危险。
常见做法是缩短 Token 有效期,并在后端维护版本号、密码更新时间或黑名单。每次校验 Token 时,除了验签和过期时间,还要确认账号状态和 Token 版本是否仍有效。
前后端协作点
Authorization
接口统一使用 `Authorization: Bearer token`,避免多套传参方式。
统一拦截
前端遇到 401 要清本地状态并跳登录页,避免页面半登录。
密码修改
修改成功后清 Token,要求重新登录,降低旧凭证风险。
不要把 JWT 当成万能安全方案
JWT 只是凭证格式,不负责权限设计、接口校验、CSRF、防重放和敏感操作确认。后台系统即使只有一个管理员,也要做好密码 BCrypt、登录失败限制、关键操作日志和 HTTPS。Token 泄露后能做什么,取决于后端接口权限边界。
实践建议:JWT 适合做管理端无状态鉴权,但要配合账号状态、版本控制、过期策略和前端统一拦截,才算完整。