2011-12-30 35 views
8

Estoy utilizando Spring Security 3.0 en mi proyecto y estoy restringiendo al usuario para que tenga una sesión como máximo. La configuración se da a continuación:Usuarios concurrentes máximos en Spring Security

<security:session-management> 
      <security:concurrency-control error-if-maximum-exceeded="true" max-sessions="1"/> 
</security:session-management> 

Quiero imprimir el mensaje personalizado (no por defecto proporcionada por el resorte) cuando se alcanzan máximo de sesiones. Por favor ayuda.

Gracias de antemano!

Respuesta

2

Por favor, tenga esto en su messages.properties

ConcurrentSessionControlStrategy.exceededAllowed=This account is already using by someone. 

se mostrará "Esta cuenta ya está utilizando por alguien." puedes dar lo que quieras

Asimismo, no se olvide de config Resourcebundle

2

expired-url debería ser lo que necesita. En la configuración de la seguridad de resorte

<security:concurrent-session-control 
    max-sessions="1" exception-if-maximum-exceeded="true" expired-url="/loginform.do" /> 

también añadir siguiente oyente en web.xml.

org.springframework.security.web.session.HttpSessionEventPublisher 
+0

este es una configuración antigua –

1

primavera-seguridad-3.2.0, message.properties:

ConcurrentSessionControlAuthenticationStrategy.exceededAllowed = Máximo de sesiones de {0} para este principal superó

Cuestiones relacionadas