一、介紹
AbstractAuthenticationProcessingFilter
是 Spring Security 框架里的一個抽象過濾器,它在處理基于表單的認證等認證流程時起著關鍵作用。它繼承自 GenericFilterBean
,并實現了 javax.servlet.Filter
接口。此過濾器的主要功能是攔截客戶端發送的認證請求,對請求中的認證信息(如用戶名和密碼)進行提取,然后將這些信息封裝成 Authentication
對象,再把該對象傳遞給 AuthenticationManager
進行認證。
主要特性
- 攔截認證請求:可以配置它攔截特定的 URL 模式,像登錄表單提交的 URL。
- 提取認證信息:從請求里提取認證所需的信息,例如從表單參數中獲取用戶名和密碼。
- 封裝認證對象:把提取的認證信息封裝成
Authentication
對象,一般是UsernamePasswordAuthenticationToken
。 - 調用認證管理器:將封裝好的
Authentication
對象傳遞給Authen