【问题标题】:Grails spring switch userGrails 弹簧开关用户
【发布时间】:2015-12-31 12:50:46
【问题描述】:

j_spring_security_switch_user 有问题,因为我只能在角色 ROLE_SWITCH_USER 的用户之间切换。

我可以更改它,以便它可以从具有ROLE_SWITCH_USER 角色的用户切换到具有ROLE_USER 的用户吗?

【问题讨论】:

  • 如果我对您的问题的理解正确,那么您只想切换到具有ROLE_USER 角色的用户吗?
  • 是的,但是我想保留切换用户的权限规则,所以只能从ROLE_SWITCH_USER完成

标签: grails spring-security grails-2.4


【解决方案1】:

我把它修好了:

创建文件 MySwichUserFilter.groovy:

class MySwichUserFilter extends SwitchUserFilter {

    protected Authentication attemptSwitchUser(HttpServletRequest request) throws AuthenticationException {

        Authentication switchTo = super.attemptSwitchUser(request);
        SecurityContextHolder.getContext().getAuthentication();

        return switchTo;
    }
}

更正resources.groovy

beans = {
    ...
    switchUserProcessingFilter(MySwichUserFilter){
        userDetailsService  = ref('userDetailsService')
        switchUserUrl       = "/j_spring_security_switch_user"
        exitUserUrl         = "/j_spring_security_exit_user"
        targetUrl           = conf.successHandler.defaultTargetUrl
    }
    ...
}

【讨论】:

    猜你喜欢
    • 2017-01-01
    • 2012-01-07
    • 2012-08-21
    • 1970-01-01
    • 2011-04-21
    • 2012-03-01
    • 1970-01-01
    • 2017-12-22
    • 1970-01-01
    相关资源
    最近更新 更多