07 — Spring Security
定位: Spring 生态的认证授权框架——基于 Servlet Filter 的安全解决方案 面试高频度: ⭐⭐⭐⭐
一、板块在体系中的位置
+----------------------------------------------------+
| Spring Security 在体系中的位置 |
| |
| 01. IoC 容器 -> 02. AOP (方法安全基于 AOP) |
| | |
| v |
| 07. Spring Security (本板块) |
| +-------------------------------------------+ |
| | Filter Chain + AuthenticationManager | |
| | + Method Security (@PreAuthorize) | |
| +-------------------------------------------+ |
| | |
| v |
| 04. Spring MVC (拦截请求) |
| 05. Spring Boot (自动配置 Security) |
| 08. Spring Cloud (微服务安全+网关鉴权) |
+----------------------------------------------------+二、知识全景图
+----------------------------------------------------+
| Spring Security 核心知识体系 |
| |
| +----------------------------------------------+ |
| | 1. 认证流程与过滤器链 | |
| | DelegatingFilterProxy -> FilterChainProxy | |
| | -> SecurityFilterChain (11个默认Filter) | |
| | -> UsernamePasswordAuthenticationFilter | |
| +----------------------------------------------+ |
| | |
| +----------------------------------------------+ |
| | 2. JWT 与 OAuth2 | |
| | JwtAuthenticationFilter + Token 续期/失效 | |
| | OAuth2 五种授权模式对比 | |
| +----------------------------------------------+ |
| | |
| +----------------------------------------------+ |
| | 3. 方法安全与 CSRF | |
| | @PreAuthorize/@PostAuthorize 权限控制 | |
| | CSRF 防护机制 + 无状态 API 禁用场景 | |
| +----------------------------------------------+ |
+----------------------------------------------------+三、子专题导航
| # | 主题 | 面试频率 | 核心内容 |
|---|---|---|---|
| **07.1-认证流程与过滤器链** | ⭐⭐⭐⭐⭐ | DelegatingFilterProxy、11个默认Filter、认证流程、密码编码器 | |
| **07.2-JWT与OAuth2** | ⭐⭐⭐⭐⭐ | JWT 过滤器集成、Token 续期/失效方案、OAuth2 授权模式 | |
| **07.3-方法安全与CSRF** | ⭐⭐⭐⭐ | @PreAuthorize/@PostFilter 方法安全、CSRF 防护机制 |
四、核心考点速记
考点 1:认证流程
UsernamePasswordAuthenticationFilter
-> 创建 UsernamePasswordAuthenticationToken
-> AuthenticationManager (ProviderManager)
-> AuthenticationProvider
-> UserDetailsService.loadUserByUsername()
-> PasswordEncoder.matches()
-> 返回 Authentication -> SecurityContextHolder考点 2:无状态 JWT 方案
禁用 CSRF + STATELESS session + JwtAuthenticationFilter(OncePerRequestFilter)
考点 3:Token 失效方案
黑名单(Redis)/ 短有效期 + 频繁刷新 / 版本号
📚 相关板块
- **Spring MVC** — Filter/Interceptor 集成
- **AOP** — 方法安全基于 AOP
- **Spring Cloud** — 网关鉴权 + OAuth2