1. 程式人生 > 實用技巧 >spring security整體流程

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