2013-08-05 64 views
0

我想爲狀態服務器使用sessionState。 這適用於所有會話變量,但不適用於身份驗證。我必須做什麼才能在State Server中存儲身份驗證,以便我可以使用Web服務器場?我的web.config看起來像..ASP.NET FormsAuthentication不使用狀態服務器

<system.web> 
<authentication mode="Forms">  
    <forms loginUrl="~/Account/Login" timeout="20" slidingExpiration="true" />  
</authentication> 
<authorization> 
    <deny users="?" /> 
</authorization> 

<sessionState mode="StateServer" stateConnectionString="tcpip=localhost:42424" cookieless="false" timeout="20" /> 
<machineKey validationKey="F2FCB9C6C8F045A198D4885C6E... 
+0

您是否嘗試過使用狀態服務器配置進行會話並嘗試對用戶進行身份驗證?它應該沒有問題。唯一需要確定的是網絡農場中所有機器的機器密鑰都是相同的。 – Chandermani

回答

1

我不清楚你的意思是「存儲身份驗證在狀態服務器」。

身份驗證永遠不會存儲在會話變量中,這樣做很不好。身份驗證以加密cookie(非持久性或持久性)的形式存儲在用戶本地計算機上,因此,只要您的計算機密鑰在所有服務器上被共同指定,就可以不受任何webfarm問題的影響。

Session和FormsAuthentication是.NET中的不同系統。