Spring Boot 3.x.x Spring Security 6.x.x @PreAuthorize 失效

Spring Boot 3.x.x Spring Security 6.x.x @PreAuthorize 失效

  • 背景
  • 问题
  • 解决
  • 备注

背景

最近在搞一个后端项目,登录、接口权限、token认证。
版本

Spring Boot 3.2.0
JDK 21
Spring Security 6.2.0

问题

@PreAuthorize 失效,没有走认证。
Spring Boot 3.x.x Spring Security 6.x.x @PreAuthorize 失效_第1张图片

解决

给@PreAuthorize 打debug,发现不走该注解的认证。
上网查,需要加注解:

  • @EnableGlobalMethodSecurity(prePostEnabled = true) 有效,但是已经被 @Deprecated标记
  • @EnableMethodSecurity该注解。
    Spring Boot 3.x.x Spring Security 6.x.x @PreAuthorize 失效_第2张图片

备注

  • 具体的Security 权限控制流程可搜初始化流程

你可能感兴趣的:(各种各样的问题记录,java,spring,boot)