Como faço para fazer o logout do Java EE Container Gerencied Security?
Pergunta
Estou trabalhando no WebSphere 7.0. Eu uso a segurança do servidor de aplicativos. Gostaria de remover a associação com o usuário, para que o usuário seja redirecionado para a página de login antes de acessar um recurso seguro (e request.getUserPrincipal () retorna nulo).
Eu tento :
request.getSession (). invalidate ();
Mas o principal do usuário ainda está associado.
Como eu poderia remover essa associação?
Solução
No WebSphere, um formulário de logout especial deve ser usado:
Aqui o que estou usando:
<body onload="javascript:document.logout.submit()">
<h2>Sample Form Logout</h2>
<form METHOD=POST ACTION="ibm_security_logout" NAME="logout">
Click this button to log out:
<input type="submit" name="logout" value="Logout">
<INPUT TYPE="HIDDEN" name="logoutExitPage" VALUE="/some url">
</form>
</body>
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow