如何以管理员身份为其他用户重置密码?
我试过使用下面的代码
var code = await UserManager.GeneratePasswordResetTokenAsync(user.Id);
var result = await UserManager.ResetPasswordAsync(user.Id, code, vm.NewPassword);
单步执行 GeneratePasswordResetTokenAsync 时,将调用 Controller 的 dispose 方法。
谁能教教我吗?
最佳答案
您还可以扩展 UserManager 并公开不需要任何信息的显式 AdminChangePassword API。在扩展 UserManager 的 ApplicationUserManager 中类似这样的东西应该可以工作:
public IdentityResult ChangePasswordAdmin(string userId, string newPassword) {
var user = FindById(userId);
// validate password using PasswordValidator.Validate
user.PasswordHash = PasswordHasher.HashPassword(newPassword);
Update(user);
}
关于c# - Identity 2.0 由管理员重置密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23783249/