美文网首页
Spring-Security-文档笔记之过滤器

Spring-Security-文档笔记之过滤器

作者: xzz4632 | 来源:发表于2021-08-04 22:09 被阅读0次

1. DelegatingFilterProxy

一个标准的Servlet Filter代理, 可集成Spring容器中的bean(实现Filter接口). 其工作机制伪代码:

public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) {
    // 从Spring 容器中查找指定名称的Filter的bean. 
    // 然后使用这个bean
    Filter delegate = getFilterBean(someFilterBeanName);
    delegate.doFilter(request, response);
}

2. FilterChainProxy

它是通过DelegatingFilterProxy被注入到servlet容器中. 负责选择合适的SecurityFilterChain来处理请求.

2.1. 配置

它包含一个SecurityFilterChain列表. 大多数应用只需要一个SecurityFilterChain. 如果配置有多个, 只有匹配的第一个SecurityFilterChain将被调用。

2.2. 请求防火墙

它包含一个HttpFirewall实例. 用于验证所有的请求.

2.3. FilterChainProxy类图
image.png

3. SecurityFilterChain

决定当前请求要调用哪些Security Filter. 通过RequestMatcher接口来匹配HttpServletRequest。其标准实现为DefaultSecurityFilterChain.

相关文章

网友评论

      本文标题:Spring-Security-文档笔记之过滤器

      本文链接:https://www.haomeiwen.com/subject/hxjyvltx.html