2.2 过滤器和过滤器链

一、Spring Filters——过滤器

  1. 任何Spring Web本质基本上是一个servlet

  2. Security Filter在在HTTP请求到达你的Controller之前过滤每一个传入的HTTP请求

二、过滤器链

  1. 很多个过滤器按顺序进行过滤,形成过滤器链

  2. 典型过滤器链示例流程

    过滤器链示例图

三、SpringSecurity常见的内建过滤器

  1. BasicAuthenticationFilter:如果在请求中找到一个Basic Auth HTTP头,则尝试用该头中的用户名和密码验证用户

  2. UsernamePasswordAuthenticationFilter:如果在请求参数或POST请求的Request Body中找到用户名密码,则尝试用这些值对用户进行身份验证

  3. DefaultLoginPageGeneratingFilter:默认登录页面生成过滤器,用于生成一个登录页面,如果没有明确的禁用这个功能,那么会生成一个登录页面

  4. DefaultLogoutPageGeneratingFilter:如果没有禁用该功能,则会生成一个注销页面

  5. FilterSecurityInterceptor:过滤安全拦截器,用于授权逻辑

最后更新于