我在grails应用程序中使用Spring Security Core插件。我想问一件事:
我们如何访问grails应用程序之外的登录用户信息(用户名、id等)。我想在src/groovy目录中访问它。有什么办法吗?
如果您想访问UserDetails
实例而不是来自Grails工件,您有3个选项:
1) 可以将springSecurityService
作为方法参数传递,也可以将其作为springbean从grailsApplication
或applicationContext
中获取。一旦您手头有服务,您就可以致电springSecurityService.currentUser
获取用户详细信息
2) 您可以通过SPRING_SECURITY_CONTEXT
将其作为会话属性从httpSession
中获取。
3) 您可以通过SecurityContextHolder.context.authentication
从ThreadLocal
变量获取它