Frage

ich eine WebApplication haben auf WAS 6.1 mit JAAS bereits arbeiten. Authentifiziert und autorisiert in einer geordneten Art und Weise. Aber meine Logout-Seite ist das Haupt nicht das Deaktivieren. Diese Anwendung funktioniert korrekt auf JBoss eines auf Glasfish aber nicht eingeschaltet war.

Meine Logout-Seite ist nur eine einfache JSP mit diesem Inhalt.

<%System.out.println("principal is not null:"+(null != request.getUserPrincipal()));

if (null != request.getSession(false))
request.getSession(false).invalidate();
%><jsp:include page="/index.html" />

Bin ich etwas fehlt? Ich würde preffer keine spezifische API von Webpshere zu verwenden, aber wenn es unbedingt erforderlich ist, werde ich.

War es hilfreich?

Lösung

Um erfolgreich logout dieser Code-Schnipsel ist ebenfalls erforderlich:

try {
        com.ibm.websphere.security.WSSecurityHelper.revokeSSOCookies(request, response);
     } catch(Exception e) {
        // catch all possible exceptions if you want or handle them separately
        out.println("JAASLogoutServlet: logout Exception = " + e.getMessage());
        throw new ServletException(e);
}

Andere Tipps

IBM implementiert auch ein Formular mit dem Namen ibm_security_logout. Ich habe es auf Websphere 7.0 verwenden, aber es existiert in früheren Version. Sie können mehr Details meine Antwort auf meine Frage finden:

Wie abzumelden ich von Java EE Container verwaltet Sicherheit?

Auf WebSphere 8.5.5 (möglicherweise in älteren Versionen auch) können Sie benutzerdefinierte Eigenschaft festgelegt.

Sicherheit -> Globale Sicherheit -> Benutzerdefinierte Eigenschaften

com.ibm.ws.security.web.logoutOnHTTPSessionExpire=true   
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top