Spring Security 使用者登入認證過程
1.使用者使用使用者名和密碼進行登入。
2.Spring Security 将擷取到的使用者名和密碼封裝成一個實作了 Authentication 接口的 UsernamePasswordAuthenticationToken。
3.将上述産生的 token 對象傳遞給 AuthenticationManager 進行登入認證。
4.AuthenticationManager 認證成功後将會傳回一個封裝了使用者權限等資訊的 Authentication 對象。
5.通過調用 SecurityContextHolder.getContext ().setAuthentication (...) 将 AuthenticationManager 傳回的 Authentication 對象賦予給目前的 SecurityContext。
在認證成功後,使用者就可以繼續操作去通路其它受保護的資源了,但是在通路的時候将會使用儲存在 SecurityContext 中的 Authentication 對象進行相關的權限鑒定。
《Spring Security 開發實踐》技術專欄從零開始詳細介紹了Spring Security的工作原理和開發實踐過程,包括認證、授權和正常攻擊防禦等等。