2013-08-15 3 views
1

ASP.NET에서 SimpleMemberships를 사용하여 로그인 및 로그 아웃하는 사용자를 처리하기 위해 브라우저를 닫을 때 로그인 세션이 만료되도록 설정하는 방법을 알고 있는지 궁금합니다.WebSecurity 브라우저 창 수명 동안 만 로그인

persistCookie를 false로 설정했지만 브라우저를 닫은 후에도 로그인 된 상태로 유지됩니다.

편집 : 당신은 브라우저가 폐쇄로가는 로그 아웃 URL로 페이지를 지시 할 수

 [HttpPost] 
     [AllowAnonymous] 
     [ValidateAntiForgeryToken] 
     public ActionResult Login(LoginModel model, string returnUrl) 
     { 
      if (ModelState.IsValid && WebSecurity.Login(model.UserName, model.Password, false)) 
      { 
       return RedirectToLocal(returnUrl); 
      } 

      // If we got this far, something failed, redisplay form 
      ModelState.AddModelError("", "The user name or password provided is incorrect."); 
      return View(model); 
     } 
+1

모든 브라우저 창을 닫으시겠습니까? –

답변

1

,이 자바 스크립트

window.onbeforeunload =function(){ 
location.href = 'signOutUrl'; 
} 

을 시도하지만 문제는 보장 할 수 없습니다입니다 사용자가 브라우저를 닫습니다. 그는 인터넷 연결을 끊을 수 있습니다. 또한이 클라이언트 측 JavaScript 솔루션 사용자가이 코드를 쉽게 변경할 수 있기 때문에.

2

쿠키가 현재 상황과 같이 지속되지 않으면 현재 브라우저 인스턴스의 메모리에 저장되고 쿠키를 닫으면 쿠키가 손실됩니다. 모든 브라우저 창과 탭이있는 경우 닫았는지 확인하십시오.