UserDetails或principal是否真的存储在Session中?

时间:2014-11-12 17:57:38

标签: spring session authentication

请参阅以下链接..

Spring security access UserDetailsService from deeper layers

我读到的每个地方都说Spring会在成功身份验证时自动存储UserDetails或principal。但它真的完成了吗?那个名字呢? 是否可以通过session.getAttribute(...)来获取UserDetails?

所有其他方法都可以,但我对此感到困惑

1 个答案:

答案 0 :(得分:1)

是的,每个执行线程都有一个关联的SecurityContext上下文。您可以使用SecurityContextHolder检索身份验证/用户详细信息,如下所示:

Authentication authentication = SecurityContextHolder.getContext().getAuthentication();

这是一个很好的教程:http://www.baeldung.com/get-user-in-spring-security