返回技术
技术

Spring Boot 3 + JWT 后台认证

本站后台登录的实现思路:无状态 JWT、Security 过滤器链、统一异常。

#Spring Boot#JWT#后端1 min read

本站后台用 JWT 做认证,记录核心实现思路。

流程

  1. 管理员 POST /api/v1/admin/login 提交用户名密码
  2. 校验通过后签发 JWT(含 ROLE_ADMIN
  3. 后续请求带 Authorization: Bearer <token>
  4. JwtAuthFilter 解析 token,写入 SecurityContext

Security 配置要点

// 公开接口
.requestMatchers(HttpMethod.GET, "/api/v1/messages").permitAll()
.requestMatchers("/api/v1/posts/**").permitAll()
// 管理接口
.requestMatchers("/api/v1/admin/**").hasRole("ADMIN")

Session 设为 STATELESS,不用服务端 session。

前端配合

  • Token 存 sessionStorage(关标签页即失效)
  • AdminAuthGate 做路由守卫
  • 真正安全靠 API — 前端守卫只是 UX

注意

  • JWT_SECRET 至少 32 字符,生产环境必改
  • 密码用 BCrypt 或环境变量明文比对(本站后者,个人站够用)
  • Token 过期时间别太长

扩展

新模块的管理接口统一挂在 /api/v1/admin/** 下,自动受 JWT 保护。

相关推荐

同分类或相似标签的文章

全部文章 →