1、401
用户名及密码是否正确
2、403
逻辑主要为检查token,是否携带及是否正确
关键代码遗漏问题:权限没有设置进去上下文
//自定义的filter中,记得把权限传进去!!否则报403错误
UsernamePasswordAuthenticationToken authentication = new UsernamePasswordAuthenticationToken(userDetails.getUsername(), userDetails.getPassword(),userDetails.getAuthorities());
3、鉴权-hasRole
myUserDetails改为把角色名作为authority,在getAuthorities方法中给出去
数据库的角色名必须以 ROLE_ 开头,如ROLE_admin
controller中使用@PreAuthorize("hasRole('admin')")即可