【问题标题】:Retrieve not-logged User Details from Spring Security从 Spring Security 中检索未记录的用户详细信息
【发布时间】:2020-08-28 03:26:15
【问题描述】:

如果用户登录,我知道如何使用 SecurityContextHolder 检索用户详细信息。

// Some code

UserDetails userDetails =
 (UserDetails)SecurityContextHolder.getContext().getAuthentication().getPrincipal();

所以,我的问题是:

是否可以检索有关当前未登录用户的信息,例如仅通过用户 ID?

如果用户当前处于离线状态,我如何更新有关用户的信息?

【问题讨论】:

    标签: java spring-security spring-security-oauth2


    【解决方案1】:

    填充SecurityContext 的通常是UserDetailsService,您必须自己实现它,或者采用现有的之一。

    我不确定我是否完全理解您的问题,但理论上您可以简单地使用您的 UserDetailsS​​ervice(或它本身用于加载用户的服务)来获取您想要的所有详细信息。因此,如果您有 JPAUserDetailsS​​ervice,这可能会调用一个存储库,并且没有什么可以阻止您自己使用该存储库。

    你到底想做什么?

    【讨论】:

      猜你喜欢
      • 2013-07-23
      • 2012-05-23
      • 2015-03-09
      • 2011-01-30
      • 1970-01-01
      • 2012-11-13
      • 2011-08-21
      • 2015-05-31
      • 2017-10-11
      相关资源
      最近更新 更多