2011-01-07 18 views
5

Uso la seguridad de primavera para la autenticación de usuario. En security.xml tengocómo cambiar la URL de destino predeterminada según la función de usuario

<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"/> 

Quiero ser capaz de configurar diferentes URL de destino para diferentes roles de usuario. ¿Cómo hago esto?

Gracias!

Respuesta

0

No creo que se puede configurar esto, pero su default-target-urlsalpicadero puede contener lógica para redirigir a la página apropiada basada en el papel.

+0

Parece que es posible tener una implementación personalizada del filtro de autenticación - http://forum.springsource.org/showthread.php?t=93541 – hese

+0

@hese. Gracias. +1 por tu respuesta. Aprendí algo hoy. – Raghuram

7

Si está utilizando Primavera-Security 3.0 o superior implementar su propio AuthenticationSuccessHandler es el camino a seguir:

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

Entonces MySpecialAuthenticationSuccessHandler puede extender una de las los controladores predeterminados como SavedRequestAwareAuthenticationSuccessHandler aunque no son realmente compatibles con la herencia.

Cuestiones relacionadas