如何根据用户角色登录后配置不同的目标URL?我正在使用Spring安全插件。
答案 0 :(得分:1)
我认为你可以在这个网站中定义一个defaultTargetUrl,就像Denis提到的那样:Grails spring security就像hitty5说的那样。
您可以根据用户在该默认请求的响应中的角色来设置重定向的逻辑。
用grails:
在config.groovy
中grails.plugins.springsecurity.successHandler.defaultTargetUrl = '/login/loggedIn'
在LoginController中(因为该控制器包含配置的默认操作)
@Secured(['ROLE_ADMIN', 'ROLE_DEFAULT'])
def loggedIn = {
Usuario user = springSecurityService.currentUser
def roleDefault = Rol.findByAuthority("ROLE_DEFAULT")
if(user.authorities.contains(roleDefault))
redirect(controller: 'factura')
def roleAdmin = Rol.findByAuthority("ROLE_ADMIN")
if(user.authorities.contains(roleAdmin))
redirect(controller: 'noticia')
}
我希望它有所帮助...
答案 1 :(得分:0)
<form-login
login-processing-url="/user/login"
login-page="/login"
default-target-url="/loginsuccess"
authentication-failure-url="/loginfailure" />
为什么在检查映射到loginsuccess网址的Spring控制器中的用户角色后,无法重定向到另一个页面?