Asp.net
ASP 身份核心 GeneratePasswordResetTokenAsync 已過期
我在 .NET Core 2.1 中設置了 Identity Server 4 項目,一切正常,但是當我使用使用者管理器生成重置密碼令牌時,令牌會在 24 小時後過期,我可以將其更改為 48 小時嗎?
我發送重置令牌的程式碼如下所示:
var code = await _userManager.GeneratePasswordResetTokenAsync(user); var callbackUrl = url.EmailConfirmationLink(user.Id, code, scheme);我的 ConfigureServices 如下所示:
services.AddIdentity<ApplicationUser, IdentityRole>(config => { config.SignIn.RequireConfirmedEmail = true; }) .AddEntityFrameworkStores<ApplicationDbContext>() .AddDefaultTokenProviders();謝謝 :)
將以下程式碼添加到 Startup.cs 類中的 ConfigureServices() 方法應該會對您有所幫助。
services.Configure<DataProtectionTokenProviderOptions>(options => options.TokenLifespan = TimeSpan.FromDays(2));預設令牌生命週期為 24 小時(1 天)。請參考github和TokenOptions