我有一个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文件中还应该有一个设置。 –