.NET Core2.1でIdentityServer 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 を参照してください