Grails - Spring安全帐户创建

时间:2012-06-04 01:43:17

标签: security grails plugins login spring-security

我正在使用Spring Security Core插件,可以成功地将用户登录到我的应用程序中。但是,当用户成功注册时,我不明白如何在注册回发上设置该用户的安全上下文,以便可以将它们重定向到安全页面而无需再次登录。欢迎任何帮助。感谢。

2 个答案:

答案 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)