2011-04-19 4 views
0

DNS에 * .website.com이 website.com을 가리키는 와일드 카드가 있습니다.하위 도메인 수정시 강제로 사용자 로그 아웃을 수행 하시겠습니까?

과 같은 URL은 http://clientA.website.com/이고 client B과 같은 로그인 페이지를 방문합니다. Client A에 로그인 한 다음 하위 도메인을 client B's으로 변경합니다. 사용자가 하위 도메인을 변경할 때 사용자를 자동으로 로그인 페이지로 되돌리려면 어떻게해야합니까?

트릭이 실행됩니까?

<authentication mode="Forms"> 
     <forms slidingExpiration="true" loginUrl="Views\Login.aspx" 
     defaultUrl="Views\Login.aspx" protection="All" timeout="300" 
     cookieless="UseCookies" enableCrossAppRedirects="false" 
     domain="*.website.com" <!--Will this property and value do what I want?--> 
     name=".ASPXFORMSAUTH"/> 
    </authentication> 

고마워요! 그들은 당신이 할 수있는 로그인 할 때

답변

1

:

Session["validhost"] = Request.Url.Host; 

을 다음 Global.asax.cs에서 당신이 할 수 :

protected void Application_AuthenticateRequest(Object sender, EventArgs e) 
{ 
    if (Session["validhost"] != null && Request.Url.Host != Session["validhost"]){ 
    Session.Abandon(); 
    //some sort of redirect 
    } 
} 

당신은 확실히 몇 가지 변화를 만들 수있는이 기반 사이트에 물건을 저장하는 방법은 있지만이 기본 패턴이 효과적입니다.

+0

게시물 주셔서 감사합니다. 이것이 가능한 해결책 중 하나입니다. 폼 인증이 나를 위해 자동으로 처리하는 방법을 기대하고있었습니다. –

관련 문제