/ / Impostazioni di gestione della sessione Spring Security e IllegalStateException - spring-security, session-timeout

Impostazioni di gestione delle sessioni Spring Security e IllegalStateException - spring-security, session-timeout

Sto cercando di aggiungere <session-management> nella mia configurazione dello spazio dei nomi di Spring Securityche posso fornire un messaggio diverso rispetto alla pagina di accesso quando la sessione scade. Non appena lo aggiungo alla mia configurazione, inizia a lanciare "IllegalStateException: Impossibile creare una sessione dopo che la risposta è stata confermata" quando accedo all'app.

Sto usando Spring Security 3 e Tomcat 6. Ecco la mia configurazione:

<http>
<intercept-url pattern="/go.htm" access="ROLE_RESPONDENT" />
<intercept-url pattern="/complete.htm" access="ROLE_RESPONDENT" />
<intercept-url pattern="/**" access="IS_AUTHENTICATED_ANONYMOUSLY" />
<form-login login-processing-url="/j_spring_security_check"
login-page="/login.htm"
authentication-failure-url="/login.htm?error=true"
default-target-url="/go.htm"
/>
<anonymous/>
<logout logout-success-url="/logout_message.htm"/>
<session-management invalid-session-url="/login.htm" />

</http>

Tutto funziona alla grande fino a quando non aggiungo il <session-management> linea. Cosa mi manca?

risposte:

1 per risposta № 1

Probabilmente stai colpendo questo bug:

https://jira.springsource.org/browse/SEC-1346

Prova a utilizzare la versione aggiornata (3.0.2.RELEASE).


0 per risposta № 2

Questo funziona per me

<session-management invalid-session-url="/taac/login">
<concurrency-control max-sessions="1" error-if-maximum-exceeded="true" />
</session-management>

0 per risposta № 3

Forse includendo il auto-config="true" attributo nel <http> tag aiuta, potresti mancare alcuni filtri o impostazioni richiesti.