2017-08-19 280 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