1-常用过滤器介绍

简介: 本文介绍了Spring Security核心过滤器链中的常用过滤器及其作用,涵盖安全上下文管理、CSRF防护、认证登录、会话控制、异常处理等关键功能,帮助理解Security底层执行流程与AOP机制的实现。

1-常用过滤器介绍
过滤器是一种典型的AOP思想,关于什么是过滤器就不赘述了,读者们应该也都知道凡是web工程都能用过滤器。 接下来咱们就一起看看Spring Security中这些过滤器都是干啥用的,源码我就不贴出来了,有名字,大家可以自己在idea中Double Shift去。我也会在后续的学习过程中穿插详细解释。

  1. org.springframework.security.web.context.SecurityContextPersistenceFilter
    首当其冲的一个过滤器,作用之重要自不必多言。 SecurityContextPersistenceFilter主要是使用SecurityContextRepository在session中保存或更新一个SecurityContext,并将SecurityContext给以后的过滤器使用,来为后续filter建立所需的上下文。
    SecurityContext中存储了当前用户的认证以及权限信息。
  2. org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter
    此过滤器用于集成SecurityContext到Spring异步执行机制中的WebAsyncManager
  3. org.springframework.security.web.header.HeaderWriterFilter
    向请求的Header中添加相应的信息,可在http标签内部使用security:headers来控制
  4. org.springframework.security.web.csrf.CsrfFilter
    csrf又称跨域请求伪造,SpringSecurity会对所有post请求验证是否包含系统生成的csrf的token信息, 如果不包含,则报错。起到防止csrf攻击的效果。
  5. org.springframework.security.web.authentication.logout.LogoutFilter
    匹配URL为/logout的请求,实现用户退出,清除认证信息。
  6. org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter
    认证操作全靠这个过滤器,默认匹配URL为/login且必须为POST请求。
  7. org.springframework.security.web.authentication.ui.DefaultLoginPageGeneratingFilter
    如果没有在配置文件中指定认证页面,则由该过滤器生成一个默认认证页面。
  8. org.springframework.security.web.authentication.ui.DefaultLogoutPageGeneratingFilter
    由此过滤器可以生产一个默认的退出登录页面
  9. org.springframework.security.web.authentication.www.BasicAuthenticationFilter
    此过滤器会自动解析HTTP请求中头部名字为Authentication,且以Basic开头的头信息。
  10. org.springframework.security.web.savedrequest.RequestCacheAwareFilter
    通过HttpSessionRequestCache内部维护了一个RequestCache,用于缓存HttpServletRequest
  11. org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter
    针对ServletRequest进行了一次包装,使得request具有更加丰富的API
  12. org.springframework.security.web.authentication.AnonymousAuthenticationFilter
    当SecurityContextHolder中认证信息为空,则会创建一个匿名用户存入到SecurityContextHolder中。 spring security为了兼容未登录的访问,也走了一套认证流程,只不过是一个匿名的身份。
  13. org.springframework.security.web.session.SessionManagementFilter
    SecurityContextRepository限制同一用户开启多个会话的数量
  14. org.springframework.security.web.access.ExceptionTranslationFilter
    异常转换过滤器位于整个springSecurityFilterChain的后方,用来转换整个链路中出现的异常
  15. org.springframework.security.web.access.intercept.FilterSecurityInterceptor
    获取所配置资源访问的授权信息,根据SecurityContextHolder中存储的用户信息来决定其是否有权
    限。
    好了!这一堆排山倒海的过滤器介绍完了。 那么,是不是spring security一共就这么多过滤器呢?答案是否定的!随着spring-security.xml配置的添加,还 出现新的过滤器。
    那么,是不是spring security每次都会加载这些过滤器呢?答案也是否定的!随着spring-security.xml配置的修改,有些过滤器可能会被去掉。我们一步步往下走着看。
相关文章
|
3天前
|
存储 缓存 并行计算
LMCache:基于KV缓存复用的LLM推理优化方案
LMCache推出KV缓存持久化方案,显著优化大模型推理首Token延迟(TTFT)。通过将KV缓存存储至GPU、CPU或磁盘,实现跨请求复用,支持任意位置文本匹配,与vLLM深度集成,多轮对话、RAG场景提速3-10倍,降低硬件压力,提升吞吐。开源支持Linux/NVIDIA,正拓展AMD及更多生态支持。
73 6
LMCache:基于KV缓存复用的LLM推理优化方案
|
5天前
|
数据采集 文字识别 JavaScript
基于文本检测的 Python 爬虫弹窗图片定位与拖动实现
基于文本检测的 Python 爬虫弹窗图片定位与拖动实现
|
人工智能 Cloud Native 安全
【AI原生研讨会】阿里云邀您共探企业 AI 原生应用架构升级实践
阿里云邀您参加于11月28日在北京阿里中心举办的“企业AI原生应用架构升级”研讨会,期待与您一起探索如何为企业构建真正可信赖、可扩展、可进化的下一代 AI 应用体系。现场席位有限,立即报名!
【AI原生研讨会】阿里云邀您共探企业 AI 原生应用架构升级实践
|
8天前
|
人工智能 自然语言处理 算法
2025 全球GEO优化行业年度观察:AI商业化元年,国产服务商异军突起
2025年,生成式引擎优化(GEO)从技术小众迈向企业营销标配,市场规模达480亿元,跨境增速超90%。AI搜索普及推动流量逻辑变革,即搜AI、边鱼科技引领技术突破与普惠落地,合规化、垂直化成未来趋势,GEO正重塑企业数字营销新格局。
|
14天前
|
监控 Java C语言
Java内存排查太难?阿里云操作系统控制台上线「内存诊断」新利器
帮助用户结合应用和操作系统的角度,快速揪出 Java 应用内存占用的元凶。
|
16天前
|
人工智能 自然语言处理 测试技术
研发、测试提效攻略:利用Apipost AI 6 大核心功能实现接口测试全流程
Apipost 通过 AI 实现接口从设计到测试的全流程自动化,支持智能提取文档、一键补全参数、自动生成用例与断言,大幅提升研发与测试效率,推动接口测试向智能化、规范化升级。
|
6天前
|
人工智能 运维 监控
模型上线不是终点,是“噩梦的开始”:写给运维人的生成式 AI 监控生存指南
模型上线不是终点,是“噩梦的开始”:写给运维人的生成式 AI 监控生存指南
75 13
|
5天前
|
JavaScript Java 关系型数据库
2026版基于springboot的大学生社团管理系统
本文探讨高校学生社团管理系统的研发背景与意义,分析当前国内研究现状,提出基于Spring Boot、Vue.js、MySQL及B/S架构的技术方案,旨在提升社团管理的信息化、智能化水平,推动校园文化可持续发展。
|
6天前
|
人工智能 监控 数据可视化
2025 主流 BI 工具全景盘点——10款国内外产品赋能企业决策
2025年BI工具迎来AI驱动新阶段,市场规模持续扩张。本文盘点10款主流产品,涵盖瓴羊Quick BI、Power BI、Tableau等,聚焦AI交互、行业适配与生态集成三大趋势,解析各工具核心技术与场景价值,助力企业精准选型,赋能数字化决策升级。Quick BI(阿里云旗下)核心优势:国内唯一连续 6 年入选 Gartner ABI 魔力象限的智能 BI 产品;搭载智能小Q多Agent协同分析功能,中文语义识别准确率达 98%。
|
6天前
|
自然语言处理 监控 数据可视化
2025年国内外知名数据可视化软件盘点:功能亮点与应用价值
在数字化转型背景下,数据可视化软件成为企业释放数据价值的关键工具。本文从功能亮点、市场表现等维度,解析瓴羊Quick BI、Tableau、Power BI等主流工具在可视化能力、用户友好性、集成兼容性等方面的差异,并结合行业应用与用户评价,为企业选型提供实用参考。像瓴羊 Quick BI 的“智能小Q”一样,自然语言交互、智能洞察(如自动识别数据异常、预测趋势)将成为标配。