SpringSecurity是一个针对于Spring项目的安全框架,侧重于为Spring项目提供身份验证和授权。
将我们之前使用拦截器,过滤器进行权限检查,和身份验证的操作进行了简化,并提供了一套 Web 应用安全性的完整解决方案。
SpringSecurity使用
仅需引入spring-boot-starter-security模块,进行少量的配置,便可以实现强大的安全管理。
- WebSecurityConfigureAdapter:自定义Security策略
- AuthenticationManagerBuilder:自定义认证策略
SpringScurity的两个主要目标就是认证和授权。
1、引入SpringSecurity模块
1 | <dependency> |
2、创建config目录,添加WebSecurityConfig类
1 |
|
3、测试Controller
1 |
|
1 |
|
4、从数据库中获取用户信息,作为校验
1 | /** |
1 | /** |
使用Redis保存用户信息
在登录成功的处理方法successHandler中将token存入redis,并将token返回给前端
1 | // 生成token 直接用uuid作为redis中用户信息的key |
定义过滤器实现token校验
1 | /** |