gpt4 book ai didi

c# - 如何减少 Asp.Net Identity 中的密码重置 token 长度?

转载 作者:太空狗 更新时间:2023-10-29 19:46:49 25 4
gpt4 key购买 nike

我正在使用 Asp.Net Identity 生成密码重置 token 。

string Token = userManager.GeneratePasswordResetToken(userId);

上面的代码给了我一个大长度的 token 。是否可以生成长度较短的密码重置 token ?

最佳答案

您可以使用 TotpSecurityStampBasedTokenProvider 生成 6 位数字:

public class ResetPasswordTokenProvider : TotpSecurityStampBasedTokenProvider<OriIdentityUser>
{
public const string ProviderKey = "ResetPassword";

public override Task<bool> CanGenerateTwoFactorTokenAsync(UserManager<OriIdentityUser> manager, OriIdentityUser user)
{
return Task.FromResult(false);
}
}

并在启动类中添加:

services.AddIdentity<IdentityUser, IdentityRole>(options =>
{
options.Tokens.PasswordResetTokenProvider = ResetPasswordTokenProvider.ProviderKey;
})
.AddDefaultTokenProviders()
.AddTokenProvider<ResetPasswordTokenProvider>(ResetPasswordTokenProvider.ProviderKey);

关于c# - 如何减少 Asp.Net Identity 中的密码重置 token 长度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31108044/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com