2011-02-11 5 views
3

웹 응용 프로그램에서 동시에 여러 로그인을 방지하려고합니다. 로그인 할 때 사용자의 모든 이전 인증을 사인 아웃하고 싶습니다. 현재 로그인 만이 유일한 로그인입니다.여러 동시 로그인 금지

특정 사용자가 FormsAuthentication.SignOut()을 호출하여 기존 인증을 무효화하려면 어떻게해야합니까?

나는 어디에서나 대답 할 수는 없지만 이론 만 검색해 보았습니다.

+0

FormsAuthentication.SetAuthcookie를 사용할 수 있습니까? – Zrb0529

+0

네,하지만 어떻게 사용자를 로그 아웃하는 데 사용할 수 있습니까? –

+0

죄송합니다.이 말이 친구가 아니라면, 잠에서 깨어나서 아직 첫 번째 커피를 통하지 않고 있습니다 .--). 당신이 할 수있는 일은 본질적으로 UserLoggedIn에 대한 부울을 설정하거나 AuthCookie의 존재 여부를 확인하는 것이고, 그 중 하나가 참이면 FormsAuthentication.SignOut을 다음과 같이 호출하는 것입니다 : http://msdn.microsoft.com/en-us /library/system.web.security.formsauthentication.signout.aspx – Zrb0529

답변

2

글쎄, 나는 응용 프로그램 상태를 사용하여 사용자의 최신 세션 ID를 저장하고 마스터 페이지에서 세션 ID 일치를 확인하는 것으로 끝났다. 그렇지 않은 경우 사용자는 로그 아웃됩니다.

그런 식으로 최신 로그인 만 허용되며 이전 로그인은 사용시 로그 아웃됩니다.