2010-10-01 76 views
4

使用表單身份驗證的進程。我希望我的應用程序在某個時候不應該自動註銷用戶。禁用asp.net中的自動註銷功能

+0

你爲什麼要用Forms Authentication來做到這一點? – 2010-10-01 14:13:23

回答

9

您可以更改超時是這樣的:

<system.web> 
    <authentication mode="Forms"> 
      <forms timeout="99999999"/> 
    </authentication> 
</system.web> 

可以找到更多的配置選項here

確保您的會話超時不小於表單身份驗證超時。否則,您的用戶將難以使用您的網站。

您可以在web.config更改會話超時:

<system.web> 
    <sessionState timeout="999999999" /> 
<system.web> 

進一步的細節可以發現here

有人無限期登錄可能是一個安全問題。

+1

如果您的會話超時小於表單身份驗證超時,會發生什麼情況?我曾認爲這是一種比較常見的情況(例如,Stack overflow會記住我的登錄信息幾天,而我懷疑這會持續很長時間的會話)。你不能依賴你正在進行的所有數據,但我個人絕大多數時間都不會...... – Chris 2010-10-01 15:00:47

+0

當用戶實際登錄並嘗試使用該站點時,會話數據可能會丟失。 – 2010-10-01 15:41:04

+0

我不知道SO是如何構建的,但是您的登錄信息將保存在cookie中......這就是爲什麼您會記住您的登錄信息。 – 2010-10-01 15:42:49

4

我不知道你是否能完全關閉它,但你可以嘗試在你的web配置設置較大的超時值:

<authentication mode="Forms"> 
     <forms loginUrl="Login.aspx" timeout="9999" slidingExpiration="true" defaultUrl="~/Default.aspx"/> 
    </authentication>