Spring Security 使用

工作原理

Spring Security 的本质是一个 过滤器链 (Filter Chain)。它拦截所有的 HTTP 请求,并在请求到达你的 Controller 之前,先完成“你是谁(认证)”和“你能干什么(授权)”的检查。


具体使用

如果在 pom.xml 中引入了 Spring Security 依赖,但没有做任何自定义配置;则 Spring Security 就会使用默认配置生效;默认配置如下:


Spring Security

Spring Security 的认证流程:

请求 → Spring Security → 发现没有 Authentication → 判定为“未登录”→ 返回 401


因此 JWT token 认证必须添加到 Spring Security 的 UsernamePasswordAuthenticationFilter 用户名密码鉴权过滤器之前,如下:

请求 → JWT Filter → 解析 token → 写入 Authentication → Spring Security → 发现“已登录” → 再判断权限(是否 403)
举报

© 著作权归作者所有


0