2014-12-14 4 views
1

URL을 통해 사용자 인증 (AD 로그인)을 WebSphere에 전달하는 다른 웹 페이지를 사용하고 있습니다. 로그 아웃 할 때 로그인 페이지로 방향이 바뀌고 세션이 닫히지 않아 이미 로그인되어 있습니다. 나는 WebSphere로 쿠키를 비활성화하기 위해 몇 가지 시도를했지만 아무 것도 효과가 없었다. 로그 아웃 버튼을 누르면 Java 코드로 쿠키를 삭제하는 쉬운 방법이 있습니까? 어떤 도움이라도 대단히 감사합니다.websphere에서 쿠키 지우기 - 로그 아웃하는 방법

답변

3

WebSphere 8.x를 사용하는 경우 로그 아웃 페이지로 리디렉션을 수행하기 전에 servlet 3.0 API 및 request.logout() 메소드를 사용해야합니다. 이 메소드는 세션 및 인증 쿠키를 제거합니다. (WAS V8에서 사용되지 않음)

이전 WebSphere 버전/서블릿 API는 다음을 사용하십시오

:

try { 
    WSSecurityHelper.revokeSSOCookies(req, res); 
    } catch(Exception e) { 
    ... 
} 

UPDATE 내가 폼 로그 아웃을 권 해드립니다 V7 들어
. 당신은 다음과 같은 로그 아웃 양식을 작성 양식 응용 프로그램을 로그 아웃하거나, 로그 아웃 한 후 원하는 페이지로 리디렉션 logoutExitPage를 사용할 수있는 ibm_security_logout에 대한 사용자 정의 포스트 만들려면 : 자세한 내용을 참조 Customizing login/logout

를 들어

<h2>Sample Form Logout</h2> 
<FORM METHOD=POST ACTION="ibm_security_logout" NAME="logout"> 
    <input type="submit" name="logout" value="Logout"> 
    <INPUT TYPE="HIDDEN" name="logoutExitPage" VALUE="/login.html"> 
</form> 

을 이 양식 로그 아웃을 사용할 수 없다면 서블릿에 위와 같이 WSSecurityHelper.revokeSSOCookies(req, res)을 사용하십시오.

+0

WebSphere에 추가하거나 보안 매개 변수를 변경해야하는 추가 클래스가 있습니까? 버전 7.X를 사용 중입니다. – Dusty

+1

@Dusty 답변을 업데이트했습니다. 여분의 수업이나 보안 매개 변수가 무엇을 의미하는지 정확히 이해하지 못합니다. 일반적으로 WebSphere에서 응용 프로그램 보안을 사용하고 LTPA 쿠키가 작성되도록 양식 로그인을 사용해야합니다. HTTP 기본 인증을 사용하는 경우 사용자 자격 증명이 헤더에 저장되고 모든 요청에 ​​대해 다시 전송되므로 브라우저를 닫지 않고 로그 아웃 할 수 없습니다. – Gas