LogoutFilter
介绍
LogoutFilter是一个处理登出请求的过滤器,当请求经过LogoutFilter时,过滤器会请判断当前请求的URL是否是登出URL,如果匹配,就执行遍历执行处理登出的handlers。默认情况下,会清空SecurityContextHolder的身份认证信息,以及发送一个登出成功的事件。
代码分析
步骤1
LogoutFilter默认登出URL是/logout,但是对于一些项目而言,并一定是/logout,如果特殊的定制化需求,可以通过WebSecurityConfigurerAdapter进行配置,LogoutFilter构造器和配置代码如下:
public LogoutFilter(LogoutSuccessHandler logoutSuccessHandler,
LogoutHandler... handlers) {
this.handler = new CompositeLogoutHandler(handlers);
Assert.notNull(logoutSuccessHandler, "logoutSuccessHandler cannot be null");
this.logoutSuccessHandler = logoutSuccessHandler;
//默认登出URL是/logout
setFilterProcessesUrl("/logout");
}
@Override
protected void

LogoutFilter是Spring Security中处理登出请求的过滤器。当请求匹配到登出URL时,它会执行登出处理handler,清除身份认证信息并发送登出成功事件。在代码分析中,我们看到可以自定义登出URL并通过WebSecurityConfigurerAdapter配置LogoutFilter。在doFilter方法中,LogoutFilter比较请求URL与登出URL,执行相应的登出操作,包括调用多个handler进行处理。
最低0.47元/天 解锁文章
1643

被折叠的 条评论
为什么被折叠?



