2013-10-01 36 views
0

是否可以在asp.net中使用無Cookie驗證實現滑動過期。這是我的web.config身份驗證部分:如何使用無Cookie驗證實現SlidingExpiration?是否可能

<authentication mode="Forms"> 
    <forms loginUrl="login.aspx" 
      protection="All" 
      timeout="2880" 
      name=".USERLOGINCONTROLAUTH" 
      path="/" 
      requireSSL="false" 
      slidingExpiration="true" 
      defaultUrl="login.aspx" 
      cookieless="false" 
      enableCrossAppRedirects="false"/> 
    </authentication> 

我試着設置slidingExpiration屬性爲true,但沒有運氣。後來我也瀏覽了MSDN文檔,它說它延長了有效cookie的超時時間。請幫忙。提前感謝!

回答

0

根據我在MSDN documentation中看到的內容,Cookieless屬性的唯一有效設置是UseUri,UseCookies,AutoDetect和UseDeviceProfile。此外,我發現this post表明您不應該在沒有Cookie的情況下過期。

問題在於,使用無Cookie形式的身份驗證時,票據 實際上是Url的一部分。當 票證中的更新超時時,這意味着票證 的序列化文本表示形式也發生變化。因此,我們需要更改Url本身以反映 的新值。與Cookie不同,您不能在服務器 上重寫Url,並讓客戶端透明地選取新的Url。而您 必須強制重定向,因爲重定向會強制瀏覽器重新加載文檔並更新您在地址 欄中看到的Url。

+0

感謝您的回覆。 –

相關問題