過濾器鏈
關鍵過濾器
SecurityContextPersistenceFilter 會在請求開始時從配置好的SecurityContextRepository中獲取SecurityContext抱婉,然后把它設置給SecurityContextHolder档叔。
在請求完成后將SecurityContextHolder持有的SecurityContext再保存到配置好的SecurityContextRepository,同時清除SecurityContextHolder所持有的SecurityContext。UsernamePasswordAuthenticationFilter用于處理來自表單提交的認證蒸绩,認證成功由AuthenticationSuccessHandler處理衙四,反之由AuthenticationFailureHandler處理患亿。
FilterSecurityInterceptor用于保護Http資源(授權)传蹈,它需要引用AccessDecisionManager(決策管理器)步藕、AuthenticationManager(認證管理器)惦界、 SecurityMetadataSource(資源與權限的對應關系)。
ExceptionTranslationFilter 只會處理 AuthenticationException咙冗、AccessDeniedException異常沾歪,其他的異常會拋出。