2
有兩個網站具有相同的域名,但需要不同的身份驗證。 但是,當兩個網站都在同一瀏覽器上登錄後,則會註銷前一個網站。我可以看到發生這種情況的原因是,當一個用戶登錄到一個網站時,會發出不同的表單身份驗證票證來更新第一個身份驗證票證。爲什麼這兩個網站都使用相同的身份驗證票證?如何防止一個網站的身份驗證票更新另一個網站。登錄到一個ASP.net網站註銷另一個託管在同一臺服務器上的網站?
我的配置文件看起來像下面
<authentication mode="Forms">
<forms loginUrl="~/Login.aspx" name=".ASPXFORMSAUTH" defaultUrl="~/Default/Home.aspx" protection="All" timeout="10" slidingExpiration="true" requireSSL="false"/>
</authentication>
以下是用於發出一個網站
FormsAuthentication.SetAuthCookie(userid,true);
的身份驗證票證另一個網站下被使用。另外兩個網站上有不同的設置用戶ID的
var ticket = new FormsAuthenticationTicket(1,userid, DateTime.Now,
DateTime.Now.AddMinutes(90), false,string.Empty, FormsAuthentication.FormsCookiePath);
string cookieStr = FormsAuthentication.Encrypt(ticket);
var cookie = new HttpCookie(FormsAuthentication.FormsCookieName, cookieStr);
Response.Cookies.Add(cookie);
你能發佈註銷代碼呢? – 2013-03-24 08:21:36
他們是否使用同一段代碼共享同一個會話?這可能是一個問題。 – 2013-03-24 09:25:56