全面解析全面解析Spring Security 过滤器链的机制和特性过滤器链的机制和特性
主要介绍了Spring Security 过滤器链的机制和特性,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的
朋友可以参考下
1. 前言前言
过滤器作为 Spring Security 的重中之重,我们需要了解其中的机制。这样我们才能根据业务需求的变化进行定制。今天来探讨一下 Spring Security 中
的过滤器链机制。
2. Spring Security 过滤器链过滤器链
客户端(APP 和后台管理客户端)向应用程序发送请求,然后应用根据请求的 URI 的路径来确定该请求的过滤器链(Filter)以及最终的具体 Servlet 控
制器(Controller)。
从上图我们可以看出 Spring Security 以一个单 Filter((FilterChainProxy)) 存在于整个过滤器链中,而这个 FilterChainProxy 实际内部代理着众多的
Spring Security Filter 。这简直就是套娃啊!
2.1 过滤器链的形成过程过滤器链的形成过程
再多说一点 Filter 们的初始化过程,首先 Filter 们按照一定的顺序被 SecurityBuilder 的实现来组装为 SecurityFilterChain ,然后通过 WebSecurity 注入到
FilterChainProxy 中去,接着 FilterChainProxy 又在 WebSecurityConfiguration 中以 springSecurityFilterChain 的名称注册为 Spring Bean 。实际上还有一个隐藏层
DelegatingFilterProxy 代理了 springSecurityFilterChain 注入到最后整个 Servlet 过滤器链中。简单画了个图;
评论0
最新资源