0%

springSecurity提供的过滤器

springSecurity提供的过滤器

  • SecurityContextPersistenceFilter 两个主要职责:请求来临时,创建 SecurityContext安全上下文信息,请求结束时清空 SecurityContextHolder
  • CsrfFilter 在spring4这个版本中被默认开启的一个过滤器,用于防止csrf攻击
  • LogoutFilter 处理退出登录的过滤器
  • UsernamePasswordAuthenticationFilter 表单提交了username和password,被封装成token进行一系列的认证,便是主要通过这个过滤器完成的,在表单认证的方法中,这是最最关键的过滤器。
  • AnonymousAuthenticationFilter 匿名身份过滤器,这个过滤器个人认为很重要,需要将它与UsernamePasswordAuthenticationFilter 放在一起比较理解,spring security为了兼容未登录的访问,也走了一套认证流程,只不过是一个匿名的身份。
  • SessionManagementFilter 和session相关的过滤器,内部维护了一个SessionAuthenticationStrategy,两者组合使用,常用来防止 session-fixation protection attack,以及限制同一用户开启多个会话的数量
  • ExceptionTranslationFilter 异常翻译过滤器,这个过滤器本身不处理异常,而是将认证过程中出现的异常交给内部维护的一些类去处理
  • FilterSecurityInterceptor 这个过滤器决定了访问特定路径应该具备的权限,访问的用户的角色,权限是什么?访问的路径需要什么样的角色和权限?这些判断和处理都是由该类进行的

欢迎关注我的其它发布渠道