若依笔记(六):前后端token鉴权体系
文章目录
- 前端/login
- 后端生成token
- 后端拦截
- 前端的动态路由
简单总结下若依的前后端token鉴权体系流程:
1、前端是通过/login接口来获取jwt-token的,jwt的配置在后端的application.yml中
2、后端处理/login请求时先检验redis中验证码然后使用spring-security内部机制(过滤链),调用DaoAuthenticationProvider的retrieveUser->loadUserByUsername()来校验用户密码;
3、/login接口使用spring-security内部机制会生成authentication这一核心对象,authentication->Principal属性是用户信息LoginUser(userDetail的子类)
4、前端通过/login获取的token会保存到Cookies的Admin-Token中,在每次请求时从Cookies中获取dmin-Token的值并放header中以Authentication的value携带给后端;
5、后端使用SecurityConfig中指定的UsernamePasswordAuthenticationFilter从除/login外请求的header中Authentication这个key中获取token校验权限;
6、前端是静态路由+动态路由方式渲染菜单,路由拦截会首先/getInfo接口获取菜单列表;