使用Spring Security Core插件在Grails应用程序外部访问LoggedIn用户信息



我在grails应用程序中使用Spring Security Core插件。我想问一件事:

我们如何访问grails应用程序之外的登录用户信息(用户名、id等)。我想在src/groovy目录中访问它。有什么办法吗?

如果您想访问UserDetails实例而不是来自Grails工件,您有3个选项:

1) 可以将springSecurityService作为方法参数传递,也可以将其作为springbean从grailsApplicationapplicationContext中获取。一旦您手头有服务,您就可以致电springSecurityService.currentUser获取用户详细信息

2) 您可以通过SPRING_SECURITY_CONTEXT将其作为会话属性从httpSession中获取。

3) 您可以通过SecurityContextHolder.context.authenticationThreadLocal变量获取它

最新更新