spring-security原理

spring security整体流程

 

图片中各个类的作用:
1JwtUser类:实现Springsecurity的UserDetails类,此类必须有三个属性
 private String username;
 private String password;
 //权限,类如ROLE_ADMIN
 private Collection<? extends GrantedAuthority> authorities;
2 JwtUtils:jwt工具类
3 MD5Util:密码加密工具类
4 MyAccessDeniedHandler:实现Springsecurity的AccessDeniedHandler,Spring security权限不足处理类
5 MyAuthenticationException:实现Springsecurity的AuthenticationEntryPoint,Spring security其他异常处理类,比如请求路径不存在等
6 MyAuthenticationFailHandler: 实现Springsecurity的AuthenticationFailureHandler,Spring security登录失败处理类
7 MyAuthenticationSuccessHandler:实现Springsecurity的AuthenticationSuccessHandler,Spring security登录成功处理类
8 MyJwtTokenFilter: 继承Springsecurity的OncePerRequestFilter,token 过滤器,在这里解析token,拿到该用户角色,设置到springsecurity的上下文环境中,让springsecurity自动判断权限
9 MyUserDetailsService:实现Springsecurity的UserDetailsService,根据用户名获取数据库该用户信息,spring security在登录时自动调用
10 WebSecurityConfig: Spring security的总配置类,配置密码验证规则、拦截的url、登录接口地址、登录成功与失败后的处理器、各种异常处理器

转自:https://www.jianshu.com/p/fc56d965e3c3

 

相关文章:

  • 2021-06-13
  • 2022-12-23
  • 2021-09-24
  • 2022-12-23
  • 2021-11-25
  • 2021-06-30
猜你喜欢
  • 2021-06-22
  • 2022-01-20
  • 2021-11-09
  • 2021-08-14
  • 2022-02-12
  • 2021-06-19
  • 2021-09-15
相关资源
相似解决方案