Spring Boot整合Spring Security简记-过滤器链(三)

new無语 转载请注明原创出处,谢谢!

Spring Security学习目录

Spring Security的安全Web架构完全基于标准的Servlet过滤器。
本章简述各个过滤器的职责。

过滤器排序


  • FilterChainProxy
  • ChannelProcessingFilter : 定向不同协议。
  • SecurityContextPersistenceFilter : 维护HttpSession,装填SecurityContext。请求结束时,复制保存SecurityContext和请求状态,清除SecurityContextHolder
  • ConcurrentSessionFilter : 维持更新用户的持续请求状态。
  • 认证处理机制 : UsernamePasswordAuthenticationFilterOAuth2ClientAuthenticationProcessingFilter等,装填请求令牌信息。
  • SecurityContextHolderAwareRequestFilter
  • JaasApiIntegrationFilter
  • RememberMeAuthenticationFilter : 用户未认证时,请求缓存cookie用户信息,符合条件,则默认提供用户信息认证RememberMeAuthenticationToken
  • AnonymousAuthenticationFilter : 用户未登录时,请求匿名登陆,提供匿名用户信息AnonymousAuthenticationToken进行访问系统。
  • ExceptionTranslationFilter : 捕获Spring Security异常,返回HTTP错误响应或者调用AuthenticationEntryPoint
  • FilterSecurityInterceptor : 负责处理HTTP资源的安全性。调用AuthenticationManagerAccessDecisionManager
Spring Boot整合Spring Security简记-过滤器链(三)_第1张图片

  • SecurityContextRepository : 加载和存储context接口。
  • AccessDecisionManager : 权限验证,功能具体授权于DecisionVoter集合。
  • RunAsManager : 临时替换Authentication
  • AfterInvocationManager : 后置权限验证,可对资源返回值进行修改,或者报异常(后置权限验证失败)。
Spring Boot整合Spring Security简记-过滤器链(三)_第2张图片
AbstractSecurityInterceptor

认证机制


终端提交请求之后,都需要在服务器端进行收集身份验证信息(HTTP表单或者HTTP Header),在Spring Security中,这种收集认证信息的功能叫做“认证机制”(Authentication Mechanism)。

AuthenticationEntryPoint


AuthenticationEntryPoint负责将用户定向到其它入口。

  • LoginUrlAuthenticationEntryPoint:定向到表单登陆页面。
  • Http401AuthenticationEntryPoint:发送401状态码。

你可能感兴趣的:(Spring Boot整合Spring Security简记-过滤器链(三))