spring security 相关过滤器

Spring Security 提供了 30 多个过滤器。默认情况下Spring Boot 在对 SpringSecurity 进入自动化配置时,会创建一个名为 SpringSecurityFilerChain 的过滤器,并注入到Spring容器中,这个过滤器将负责所有的安全管理,包括用户认证、授权、重定向到登录页面等

一、过滤器整理

|-------------------------------------------------|------------------------------------------|-------------|
| #### 过滤器 | #### 过滤器作用 | #### 默认是否加载 |
| ChannelProcessingFilter | 过滤请求协议 HTTP、HTTPS | NO |
| WebAsyncManagerIntegrationFilter | 将WebAsyncManger 与SpringSecurity 上下文进行集成 | Yes |
| SecurityContextPersistenceFilter | 在处理请求之前,将安全信息加载到 SecurityContextHolder 中 | Yes |
| HeaderWriterFilter | 处理头信息加入响应中 | Yes |
| CorsFilter | 处理跨域问题 | NO |
| CsrfFilter | 处理CSRF攻击 | Yes |
| LogoutFilter | 处理注销登录 | YES |
| OAuth2AuthorizationRequestRedirectFilter | 处理OAuth2认证重定向 | NO |
| Saml2WebSsoAuthenticationRequestFilter | 处理SAML认证 | NO |
| X509AuthenticationFilter | 处理X509认证 | No'' |
| AbstractPreAuthenticatedProcessingFilter | 处理OAuth2认证 | No'' |
| Saml2WebSsoAuthenticationFilter | 处理SAML认证 | No'' |
| UsernamePasswordAuthenticationFilter | 处理表单登录 | Yes |
| OpenIDAuthenticationFilter | 处理OpenID 认证 | No |
| DefaultLoginPageGeneratingFilter | 配置默认登录页面 | YES |
| DefaultLogoutPageGeneratingFilter | 配置默认注销页面 | YES |
| ConcurrentSessionFilter | 处理 Session 有效期 | No |
| DigestAuthenticationFilter | 处理HTTP摘要认证 | No |
| BearerTokenAuthenticationFilter | 处理OAuth2认证的Access Token | NO |
| BasicAuthenticationFilter | 处理HttpBasic登录 | YES |
| RequestCacheAwareFilter | 处理请求缓存 | YES |
| SecurityContextHolder<br />AwareRequestFilter | 包装原始请求 | YES |
| JaasApilntegrationFilter | 处理JAAS认证 | No |
| RememberMeAuthenticationFilter | 处理RememberMe登录 | NO |
| AnonymousAuthenticationFilter | 配置匿名认证 | YES |
| OAuth2AuthorizationCodeGrantFilter | 处理OAuth2认证中授权码 | No |
| SessionManagementFilter | 处理session 并发问题 | Yes |
| ExceptionTranslationFilter | 处理认证/授权中的异常 | Yes |
| FilterSecurityInterceptor | 处理授权相关 | Yes |
| SwitchUserFilter | 处理账户切换 | No |

二、官方文档

相关推荐
绝知此事6 分钟前
【算法突围 01】线性结构与哈希表:后端开发的收纳术
java·数据结构·算法·面试·jdk·散列表
无风听海11 分钟前
C# 隐式转换深度解析
java·开发语言·c#
一只大袋鼠1 小时前
Git 进阶(二):分支管理、暂存栈、远程仓库与多人协作
java·开发语言·git
德思特2 小时前
从 Dify 配置页理解 RAG 的重要参数
java·人工智能·llm·dify·rag
YOU OU2 小时前
Spring IoC&DI
java·数据库·spring
один but you2 小时前
从可变参数到 emplace:现代 C++ 性能优化的核心组合
java·开发语言
是码龙不是码农3 小时前
ThreadPoolExecutor 7 个核心参数详解
java·线程池·threadpool
这是程序猿3 小时前
Spring Boot自动配置详解
java·大数据·前端
MY_TEUCK3 小时前
【Java 后端 | Nacos 注册中心】微服务治理原理、选型与注册发现实战
java·开发语言·微服务
小江的记录本4 小时前
【Java基础】Java 8-21新特性:JDK21 LTS:虚拟线程、模式匹配switch、结构化并发、序列集合(附《思维导图》+《面试高频考点清单》)
java·数据库·python·mysql·spring·面试·maven