在Spring中重新加载/更改UserDetails以获取额外信息

时间:2016-09-30 15:34:50

标签: java spring spring-security

我已经开始切换我的应用程序以使用Spring Security。我有一个自定义UserDetailsServiceImpl,它返回我的自定义UserDetails,其中包含标准的Spring内容(角色等),以及一些特定于应用程序的引用,IE:currentWorkspace

我正在跟踪数据库中的currentWorkspace,并在初始loadUserByUsername中正确加载。在我的Spring MVC中,当我在UserDetails currentWorkspace中更改某些内容时,如何触发UserDetails的重新加载,或修改当前的Principal并将其推入会议代替过时的会议?

是否只是在我的loadUserByUsername中调用UserDetailsService这么简单,Spring会处理剩下的事情吗?我是否需要弄乱SecurityContextHolder.getContext().getAuthentication()并在那里设置一些东西?我认为这很简单,但无法弄清楚该怎么做。

0 个答案:

没有答案
相关问题