gpt4 book ai didi

spring - Spring Security-如何使另一个用户注销

转载 作者:行者123 更新时间:2023-12-02 03:57:50 26 4
gpt4 key购买 nike

当我希望从应用程序中删除用户时,我也想注销该用户(只要他单击任何链接)。我可以通过以下方式清除自己的安全上下文:

SecurityContextHolder.getContext().setAuthentication(null);

但是我应该如何清除他的安全上下文?

最佳答案

SecurityContextHolder.getContext()。setAuthentication(null);将使当前 session 无效。

SecurityContextHolder.getContext()返回一个 session 范围的bean。因此,调用setAuthentication(null)将使当前用户的 session 无效。

因此,只要用户单击链接,他的 session 将失效,您只需从 Controller 调用此函数即可。

当然,您可能不想在所有 Controller 中分散代码来执行此操作。因此,您可以使用过滤器来代替。

在您的过滤器中,您可以保留一个单例bean,其中包含您要失效的所有用户名的列表。然后,您对照列表检查当前 session ,并决定是否使该 session 无效。

关于spring - Spring Security-如何使另一个用户注销,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11780460/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com