1
私は、ログインとResetPassword機能を実装したAPIを開発中です。ログインは正常に動作し、resetPasswordも正常に動作します。しかし、パスワードをリセットして新しいパスワードでログインしようとすると、ログインに失敗します。リセットすると、ハッシュとパスワードフィールドが更新されているのがわかりますが、ログインに失敗します。私はリセットのために次のコードを使用しています。アイデンティティMVCパスワードを変更してからログインします。
if (user.VerificationCode == model.VerificationCode)
{
//var newPasswordHash = UserManager.PasswordHasher.HashPassword(model.NewPassword);
//var token = await UserManager.GeneratePasswordResetTokenAsync(user.Id);
//user.PasswordHash = newPasswordHash;
user.Password = model.NewPassword;
//IdentityResult result = await UserManager.ResetPasswordAsync(user.Id, token, newPasswordHash);
//IdentityResult result = await UserManager.ChangePasswordAsync(user.Id, user.Password, model.NewPassword);
var result = await UserManager.UpdateAsync(user);
if (!result.Succeeded)
{
response.Message = AppConstants.Error;
response.IsSuccess = false;
}
else
{
response.Message = AppConstants.OperationSuccessful;
response.IsSuccess = true;
}
}
SignInManager.PasswordSignInAsyncを使用して既に指定されたコードにログインします。 ここで何が間違って行われているのですか?