加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – OWIN第二天拒绝身份验证cookie

发布时间:2020-12-15 21:05:45 所属栏目:asp.Net 来源:网络整理
导读:我有一个ASP.NET MVC5应用程序,其中包含使用OWIN生成的启动配置. 用户登录我的应用程序,保持浏览器打开,但如果他第二天尝试访问它,应用程序会将用户重定向到登录页面. 我无法在我的开发人员计算机上重现此问题,它只发生在我当前的共享托管服务提供商上.实际
我有一个ASP.NET MVC5应用程序,其中包含使用OWIN生成的启动配置.

用户登录我的应用程序,保持浏览器打开,但如果他第二天尝试访问它,应用程序会将用户重定向到登录页面.

我无法在我的开发人员计算机上重现此问题,它只发生在我当前的共享托管服务提供商上.实际上它在我以前的提供商上工作正常.

应用程序池偶尔会重新启动,但根据我的经验,如果我手动执行回收,它不会导致令牌失效(据我所知,这应该是预期的行为).

我尝试明确设置滑动过期并增加cookie有效性,但它没有效果:

// Enable the application to use a cookie to store information for the signed in user
app.UseCookieAuthentication(new CookieAuthenticationOptions
{
     AuthenticationType = DefaultAuthenticationTypes.ApplicationCookie,ExpireTimeSpan = TimeSpan.FromDays(365*20),SlidingExpiration = true,LoginPath = new PathString("/Account/Login")
});
// Use a cookie to temporarily store information about a user logging in with a third party login provider
app.UseExternalSignInCookie(DefaultAuthenticationTypes.ExternalCookie);

我正在使用.NET Framework 4.5.我试图将我的所有NuGet包更新到最新版,但它没有解决问题.

我检查了发送的cookie的到期时间,它们是正确的,这应该不是问题.它发生在各种浏览器中.

解决方法

这是因为cookie受< machineKey>保护.来自ASP.NET.听起来您的提供商正在做一些事情来触发应用程序域回收,或者您在Web场中,因此机器密钥不一致.尝试设置< machineKey>在你的web.config中.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读