【问题标题】:how to change default-target-url depending on user role如何根据用户角色更改默认目标 URL
【发布时间】:2011-06-05 12:56:26
【问题描述】:

我使用 spring security 进行用户身份验证。在 security.xml 我有

<form-login login-page="/login" 
                default-target-url="/dashboard" 
                always-use-default-target="false"  
                authentication-failure-url="/login/error" 
                login-processing-url="/j_security_check"/>

我希望能够为不同的用户角色配置不同的目标网址。我该怎么做呢?

谢谢!

【问题讨论】:

    标签: spring-security


    【解决方案1】:

    如果您使用的是 Spring-Security 3.0 或更高版本,则可以实现自己的 AuthenticationSuccessHandler:

    <sec:form-login ... authentication-success-handler-ref="successHandler"/>
    ...
    <bean id="successHandler" class="de.....MySpecialAuthenticationSuccessHandler">
    

    然后MySpecialAuthenticationSuccessHandler 可以扩展像SavedRequestAwareAuthenticationSuccessHandler 这样的默认处理程序之一,尽管它们对继承并不友好。

    【讨论】:

      【解决方案2】:
      【解决方案3】:

      我不认为你可以配置这个,但你的default-target-url dashboard 可以包含根据角色重定向到适当页面的逻辑。

      【讨论】:

      猜你喜欢
      • 2020-01-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-24
      • 1970-01-01
      • 2018-11-22
      • 2013-06-29
      • 1970-01-01
      相关资源
      最近更新 更多