2013-07-02 3 views
0

내 응용 프로그램에서 shibboleth 인증을 사용하고 있습니다. 사용자가 로그 아웃 버튼을 클릭하면 ~/Shibboleth.sso/Logout 링크로 이동합니다. 버튼을 클릭하면 성공한 것 같습니다. 한 번 더 shibboleth를 사용하여 로그인하려고하면 Shibboleth 로그인 페이지로 리디렉션되지 않습니다! 대신 이전에 로그온 한 사용자 (로그 아웃 한 사용자)를 표시합니다. 로그 아웃 후에도 세션이 지속되는 것 같습니다! 다시 로그인하기 전에 브라우저를 닫으면 사용자가 정상적으로 Shibboleth 로그인 페이지로 리디렉션됩니다. 그래서 세션 상태 또는 쿠키 문제처럼 보입니다!Shibboleth 싱글 로그 아웃

if (Request.Cookies["shibsession"] != null) 
       { 
        HttpCookie myCookie = new HttpCookie("shibsession"); 
        myCookie.Expires = DateTime.Now.AddDays(-1); 
        Response.Cookies.Add(myCookie); 
       } 
       Response.Redirect("~/Shibboleth.sso/Logout"); 

을하지만 그것은 작동하지 않습니다 : 나는 그것을 해결하기 위해 다음과 같은 코드를 사용했습니다! 아무도 도와 줄 수 있습니까?

답변

1

서비스 제공자의 URL Shibboleth.sso/Logout은 IdP 세션에 대한 제어권이 없으며 그렇게 할 수도 없습니다. SAML 로그 아웃 요청을 보내거나 독점적 인 리디렉션을 발행 할 수 있습니다.

모범 사례 : 로그 아웃 처리기는 ID 공급자가 처리해야합니다.

브라우저 종료는 로그 아웃 후에 만 ​​가능합니다. 로그 아웃은 규모에 맞춰 작동하지 않으며 브라우저 공급 업체가 협력하고 스스로 스스로 그렇게하지 않는 한 절대로 안됩니다. 따라서 은 브라우저를 종료하는 것이 유일한 옵션이며 여전히 에 최신 브라우저 인 Chrome 또는 Firefox에서 쿠키를 삭제해야한다고 가정 할 수 있습니다.

관련 문제