Как выйти из системы безопасности, управляемой контейнером Java EE? - PullRequest
1 голос
/ 02 сентября 2010

Я работаю в Websphere 7.0.Я использую безопасность с сервера приложений.Я хотел бы удалить связь с пользователем, поэтому пользователь перенаправляется на страницу входа в систему перед доступом к защищенному ресурсу (а request.getUserPrincipal () возвращает ноль).

Я пытаюсь:

request.getSession (). invalidate ();

, но пользовательский субъект по-прежнему связан.

Как удалить эту связь?

1 Ответ

4 голосов
/ 02 сентября 2010

На веб-сфере должны использоваться специальные формы для выхода из системы:

http://publib.boulder.ibm.com/infocenter/wasinfo/v7r0/index.jsp?topic=/com.ibm.websphere.base.doc/info/aes/ae/tsec_pofolo.html

Вот что я использую:

<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>
...