我有一個ASP.NET Core 1.1.2項目,使用Cookie身份驗證。我遇到了一個問題,即用戶在閒置一小時或更少時間後會被提示重新登錄,並且會失去工作。下面的代碼是我在Startup.cs中的Configure函數中使用的,用於設置此功能,並且從我所知道的情況來看,它至少應在8小時後過期。順便說一句,ProjectProcessFlow只是項目的名稱。在ASP.NET核心中Cookie身份驗證過期過早
app.UseCookieAuthentication(new CookieAuthenticationOptions()
{
AuthenticationScheme = "ProjectProcessFlow",
LoginPath = new PathString("/Account/Login/"),
ExpireTimeSpan = new TimeSpan(8, 0, 0),
SlidingExpiration = true,
AutomaticAuthenticate = true,
AutomaticChallenge = true
});
我在NuGet中包含Microsoft.AspNetCore.Authentication.Cookies v1.1.2。我需要做什麼才能在預期的時間內實現登錄到期?
附加信息:
我發現,當超時發生,用戶被要求重新登錄,警告被記錄在事件查看器,它找不到下的日誌文件在服務器上該項目。所以我創建了該文件夾,並等待超時再次發生。
Hosting environment: Production
Content root path: C:\inetpub\wwwroot\Sprout
Now listening on: http://localhost:13423
Application started. Press Ctrl+C to shut down.
當我重複這個過程,同樣的事情發生,但不同數量後出現「本地主機:」當發生這種情況,在日誌文件中包含這一點,文件夾中創建。我應該提到項目名稱是ProjectProcessFlow,但URL以Sprout結尾。
這只是一個猜測,但它可能是相關的,你有沒有啓用的會議嗎?通過'services.AddSession'? –
是的,AddSession和UseSession都在Startup.cs中被調用 – Rono
在你的web.config文件中還應該有一個設置。 –