由于网上搜索的资料大部分都是使用的springsecurity的低于5.7的版本,springsecurity的配置类是通过继承WebSecurityConfigurerAdapter这个类来重写configure,以此来实现认证和授权。近期学习springsecurity使用的是5.7的版本,所以简单整理一下用5.7版本实现的登录登出的功能(前后端分离)。
首先是pom的依赖,为了方便后续的拓展,集成swagger3.0和mybatisplus
spring security 配置类,该配置类没有继承WebSecurityConfigurerAdapter,是通过声明WebSecurityCustomizer这个bean来实现一些公共资源的接口替代configure(WebSecurity web)
通过声明SecurityFilterChain的bean来替换configure(HttpSecurity http)实现认证和授权
登录过滤器的方法
登录过滤器,用于密码校验
认证成功的处理
认证失败的处理
密码加密器
实现userdetailsService来校验用户