Actualicé mi aplicación GWT/GXT con autorización LDAP básica mediante autenticación HTTP básica. Funciona bien cuando inicio un nuevo navegador: recibo la solicitud y me autorizo contra el LDAP corporativo. Mi problema: no puedo cerrar la sesión a menos que cierre/vuelva a abrir el navegador. Puedo depurar y ver cómo SecurityContextLogoutHandler#logout
se llama y el siguiente código se ejecutaSeguridad de primavera: no se puede cerrar sesión
if (invalidateHttpSession) {
HttpSession session = request.getSession(false);
if (session != null) {
session.invalidate();
}
}
SecurityContextHolder.clearContext();
Sin embargo, al parecer, ha de volver a cargar ningún efecto como el sitio y nunca conseguir otro indicador de autenticación HTTP a menos que reinicie el navegador (incluso borrar la memoria caché/las cookies no ayudarán). Aquí es parte relevante de applicationContext.xml
<security:http auto-config='true'>
<security:intercept-url pattern="/reports/**" access="ROLE_USER" />
<security:http-basic />
<security:logout logout-url="/reports/logout"
logout-success-url="/reports/Application.html" />
</security:http>
traté de definir encargo LogoutSuccessHandler
y hacer authentication.setAuthenticated(false);
sino que también tiene efecto
nada aquí que me falta aquí? Su ayuda será muy apreciada
Estoy buscando lo mismo (después de mucho tiempo), pero me cuesta creer que no se pueda hacer nada. – Snekse