2017-08-19 110 views
2

我有一个现有的生产ASP.NET Core 1.1项目,我已升级到ASP.NET Core 2.如何在ASP.NET Core 2中添加身份验证Cookie超时

我设置了ASP.NET Core标识这样的身份验证cookie在ASP.NET 1.1睿2小时

public void ConfigureServices(IServiceCollection services) 
{ 

    services.AddIdentity<ApplicationUser, ApplicationRole>(options => 
    { 
     options.Cookies.ApplicationCookie.CookieName = "MyApp"; 
     options.Cookies.ApplicationCookie.ExpireTimeSpan = TimeSpan.FromMinutes(120); 
    }) 
    .AddEntityFrameworkStores<MyDbContext, Guid>() 
    .AddDefaultTokenProviders(); 

然而,在ASP.NET 2.0核心的饼干物业已经从AddIdentity选项

回答

2

如果你要调整身份饼干取出,他们'不再是IdentityOptions的一部分。 你将不得不使用services.ConfigureApplicationCookie喜欢这个 -

public void ConfigureServices(IServiceCollection services) 
    { 
     .... 
     services.ConfigureApplicationCookie(options => { 
      options.CookieName = "MyApp"; 
      options.ExpireTimeSpan = TimeSpan.FromMinutes(120); 
     }); 
     .... 
    } 

注:CookieName属性已过时,会在将来的版本中删除。推荐的替代方案是Cookie.Domain

+0

现在它如何将上述超时链接到我的身份cookie,而不是像使用会话cookie一样的其他cookie? – devc2