Spring Security源码(五):FilterChainProxy 是如何创建的?
文章目录
- 〇、上篇回顾
- 一、WebSecurityConfiguration
-
- setFilterChainProxySecurityConfigurer()
- springSecurityFilterChain()
- 二、FilterChainProxy的创建过程
-
- 创建过程
- performBuild() 介绍
- securityFilterChainBuilders 什么时候插入的?
- 三、Debug
-
- 结果分析
- FilterSecurityInterceptor
- 四、总结
- 五、系列文章
-
- Spring Security 系列
- Spring Security OAuth 系列
〇、上篇回顾
-
整个框架的核心就是构建一个名字为 springSecurityFilterChain 的过滤器,它的类型是 FilterChainProxy
-
框架的主要参与者是 建造者 和 配置器 ,其中 WebSecurity 和 HttpSecurity 都是 建造者
-
WebSecurity 的构建目标是 FilterChainProxy 对象,即核心过滤器 springSecurityFilterChain
-
HttpSecurity 的构建目标只是 FilterChainProxy 对象中一组 SecurityFilterChain 的一个
-
配置器 主要关注 init()、configure() 方法
一、WebSecurityConfiguration
> 第一篇《Spring Security源码(一):整体框架设计》文章提到,看源码可以从 @EnableWebSecurity 注解开始,点进去发现它引入了类 WebSecurityConfiguration,类中正好有生成核心过滤器的Bean方法 springSecurityFilterChain() ,还需要关注类中另一个方法 setFilterChainProxySecurityConfigurer(),一起来看看。