Asp.net SQL Server会话数据和表单身份验证
我必须使用SQL Server来存储会话数据和用于登录的表单身份验证。有些奇怪的事情正在发生,会话即将结束,我丢失了所有会话数据,但forms auth没有将它们踢到登录页面。以下是我为此设置的web配置:Asp.net SQL Server会话数据和表单身份验证,asp.net,sql-server,Asp.net,Sql Server,我必须使用SQL Server来存储会话数据和用于登录的表单身份验证。有些奇怪的事情正在发生,会话即将结束,我丢失了所有会话数据,但forms auth没有将它们踢到登录页面。以下是我为此设置的web配置: <authentication mode="Forms"> <forms loginUrl="Login.aspx" timeout="2880" path="/" protection="All" defaultUrl="Default.asp
<authentication mode="Forms">
<forms loginUrl="Login.aspx" timeout="2880" path="/" protection="All"
defaultUrl="Default.aspx"/>
</authentication>
<authorization>
<deny users="?"/>
<allow users="*"/>
</authorization>
<sessionState mode="SQLServer" customProvider="AppFabricCacheSessionStoreProvider"
sqlConnectionString="" timeout="30" allowCustomSqlDatabase="true">
<providers>
<!-- specify the named cache for session data -->
<add name="AppFabricCacheSessionStoreProvider"
type="Microsoft.ApplicationServer.Caching.DataCacheSessionStoreProvider"
cacheName="dev-advisorlynx" sharedId="OrionShared"/>
</providers>
</sessionState>
表单验证由表单验证cookie管理。会话状态由ASP.NET_会话ID cookie管理。你可能会失去一个,而不是另一个 使用HTTP监视或检查IIS日志来检查cookie流量。无论出于何种原因,它们的范围可能会有所不同(例如,它们可能具有不同的域或路径,或者其中一个域或路径可能即将过期)。这可能很有用: