質問

私はすでに働いてJAASを使用してWAS 6.1上のWebApplicationを持っています。認証し、整然と許可。しかし、私のログアウトページは、本人の認証を解除されていません。このアプリケーションはGlasfishにJBoss上で正常に動作しますが、上のWASません。

私のログアウトページは、単純なJSPは、このコンテンツである。

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

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

私は何かが足りないのですか?私はWebpshereから特定のAPIを使用しないprefferだろうが、それが絶対的に必要とされている場合、私はされます。

役に立ちましたか?

解決

このコードスニペットも必要とされ、ログアウト正常にするには:

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);
}

他のヒント

IBMはまたibm_security_logout呼ばれるフォームを実装します。私は、WebSphere 7.0上でそれを使用してきたが、それは、以前のバージョンに存在します。あなたは私の質問に、より詳細に私の答えを見つけることができます:

どのように私は、管理対象のJava EEコンテナからログアウトしますセキュリティですか

は、WebSphere 8.5.5で(多分古いバージョンでは、あまりにも)カスタムプロパティを設定することができます。

セキュリティ - > [グローバルセキュリティ] - > [カスタムプロパティ

com.ibm.ws.security.web.logoutOnHTTPSessionExpire=true   
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top