Различные целевые URL для пользовательских ролей - PullRequest
0 голосов
/ 15 ноября 2011

Как настроить разные целевые URL после входа в систему на основе ролей пользователя? Я использую плагин безопасности Spring.

Ответы [ 2 ]

1 голос
/ 01 октября 2012

Я думаю, что вы можете определить defaultTargetUrl, как упомянуто Денисом или как на этом сайте: Безопасность пружины Грааля , как сказал 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')
    }

Надеюсь, это поможет ...

0 голосов
/ 15 ноября 2011
<form-login
            login-processing-url="/user/login"
            login-page="/login"
            default-target-url="/loginsuccess"
            authentication-failure-url="/loginfailure" />

Почему вы не смогли выполнить перенаправление на другую страницу после проверки роли пользователя в контроллере Spring, отображенной в URL-адресе входа в систему?

...