1 2 3 4 下一页 首先看一下auto-config="true"的情况下,默认会用到哪些过滤器。 图片看不清楚?请点击这里查看原图(大图)。 图 7.1. auto-config='true'时的过滤器列表 下面开始对这些过滤器的功能一一道来。 7.1. HttpSessionContextIntegrationFilter 图 7.2. org.springFramework.security.context.HttpSessionContextIntegrationFilter 位于过滤器顶端,第一个起作用的过滤器。 用途一,在执行其他过滤器之前,率先判断用户的session中是否已经存在一个SecurityContext了。如果存在,就把 SecurityContext拿出来,放到SecurityContextHolder中,供Spring Security的其他部分使用。如果不存在,就创建一个SecurityContext出来,还是放到SecurityContextHolder中,供Spring Security的其他部分使用。 用途二,在所有过滤器执行完毕后,清空SecurityContextHolder,因为SecurityContextHolder是基于ThreadLocal的,如果在操作完成后清空ThreadLocal,会受到服务器的线程池机制的影响。 7.2. LogoutFilter (责任编辑:admin) |