1

在切换到spring-session之前如何在spring security中正确注销用户工作正常。我们不想在用户注销后使会话无效。

但是在开始使用 redis 的 spring-session 之后,用户并没有被注销。我现在需要使用new SecurityContextLogoutHandler().logout(request, response, authentication);

这会导致会话无效。有没有办法注销用户而不必使会话无效?

4

1 回答 1

1

这似乎是 Spring Security 的注销机制中的一个错误。要解决它,您可以使用:

SecurityContextHolder.clearContext();

注意解决您应该避免调用的问题

SecurityContextHolder.getContext().setAuthentication(null);
于 2015-08-13T05:12:23.510 回答