我正在使用Spring Security Core插件,可以成功地将用户登录到我的应用程序中。但是,当用户成功注册时,我不明白如何在注册回发上设置该用户的安全上下文,以便可以将它们重定向到安全页面而无需再次登录。欢迎任何帮助。感谢。
答案 0 :(得分:2)
您引用的其他链接是2岁。从那时起,我在SpringSecurityService中添加了reauthenticate
方法。请参阅文档中的“6.2 SpringSecurityService”部分:
http://grails-plugins.github.com/grails-spring-security-core/docs/
答案 1 :(得分:0)
我最终找到了这个链接,它可以解决这个问题:https://stackoverflow.com/a/7112838/469106
以下是该链接的内容:
如果您没有密码,可以通过
加载用户def user = User.findByUsername(username)
并在3参数构造函数中设置权限数组。通过
创建身份验证GrantedAuthority[] auths = user.authorities.collect { new GrantedAuthorityImpl(it.authority) }
然后你可以省略对authenticate()的调用并使用:
SecurityContextHolder.context.authentication = new UsernamePasswordAuthenticationToken(username, 'unknown', auths)