小崔接手广州飞翔科技的学生成绩管理系统,CTO大翔说:"安全不是功能,是基础设施。" 本章从宏观视角理解 Spring Security 是什么、为什么安全框架不能手写、以及它在 Spring 生态中的定位。学完本章,你将明白 Spring Security 的"过滤器链"架构为什么是安全领域的事实标准。
章节导读:安全基础与 Spring Security 概览
本章定位
本章解决的核心问题:Spring Security 是什么、为什么现代 Web 应用必须依赖安全框架而非手写过滤器、以及它在 Spring 生态中的定位。 不深入认证和授权细节,只建立安全框架的宏观认知和过滤器链骨架。
学习路线图
学习顺序说明:先理解 Spring Security 的定义与设计目标(为什么需要它)→ 建立安全过滤器链的整体认知(请求如何通过过滤器到达 Controller)→ 掌握过滤器执行顺序(12+ 过滤器的排列逻辑)→ 最后深入两大核心组件:DelegatingFilterProxy(Servlet 容器与 Spring 容器的桥梁)和 SecurityFilterChain(请求匹配与路由规则)。
文件关系说明
| 文件 | 一句话角色 |
|---|---|
Spring Security 是什么.md | 回答框架定义、三大支柱(认证/授权/攻击防护)、与手写过滤器的对比。 |
安全过滤器链.md | 建立过滤器链整体认知:请求从浏览器到 Controller 途中经过的安全关卡全貌。 |
过滤器执行顺序.md | 详解12+个过滤器的固定排列顺序,每个过滤器的职责与执行时序。 |
DelegatingFilterProxy.md | Servlet 容器的 Filter 与 Spring 容器的桥梁,将请求委托给 FilterChainProxy。 |
SecurityFilterChain.md | 请求匹配与路由规则:根据 URL 路径将请求分发到对应的安全过滤器链。 |
知识图谱
核心逻辑:手写安全过滤器重复劳动大且极易留下漏洞。Spring Security 通过一条标准化的过滤器链,在请求到达 Controller 之前完成认证、授权和攻击防护。DelegatingFilterProxy 将 Servlet 容器的 Filter 机制与 Spring 容器连接起来,FilterChainProxy 管理多条 SecurityFilterChain,按请求路径匹配路由,最终让请求通过一系列安全过滤器完成安全校验。
与上下章的衔接
上一章回顾:本教程是 Spring Security 系列的第一章,前置知识为 Spring Boot 或 SSM 项目搭建能力。
下一章预告:本章建立了安全过滤器链的宏观骨架。下一章「认证」将深入过滤器链中的认证环节——从用户提交用户名密码到系统确认身份,拆解 AuthenticationManager、ProviderManager、DaoAuthenticationProvider 等核心组件的协作流程。