WebSphere 6.1 JAAS 로그 아웃
문제
나는 이미 작동하는 JAA를 사용하여 6.1에 웹 응용 프로그램이 있습니다. 순서대로 인증하고 승인합니다. 그러나 내 로그 아웃 페이지는 교장을 비활성화하지 않습니다. 이 응용 프로그램은 jboss an on glasfish에서 올바르게 작동하지만 그렇지 않았습니다.
내 로그 아웃 페이지는이 콘텐츠가있는 간단한 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를 사용하지 않겠다고 말하지만 절대적으로 필요하다면 나는 그럴 것입니다.
해결책
성공적으로 로그 아웃하려면이 코드 스 니펫도 필요합니다.
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에서 사용했지만 이전 버전에는 존재합니다. 자세한 내용은 내 질문에 대한 내 답변을 찾을 수 있습니다.
WebSphere 8.5.5 (기존 버전에서도)에서 사용자 정의 속성을 설정할 수 있습니다.
보안 -> 글로벌 보안 -> 사용자 정의 속성
com.ibm.ws.security.web.logoutOnHTTPSessionExpire=true
제휴하지 않습니다 StackOverflow