我有一个包含AspNetUsers表的Web API。添加用户的标准方法是调用Register方法,该方法向用户插入所选密码并将其哈希以进行数据库存储。
我需要从其他地方以编程方式导入用户列表。这将适用于除密码之外的每个字段。我需要对其进行哈希处理,以便Web API UserManager在尝试登录时可以读取它。
有没有人知道UserManager如何对密码进行哈希处理?如果可以的话?
答案 0 :(得分:2)
根据MSDN,标准Microsoft.AspNet.Identity.UserManager<TUser>
实现使用Microsoft.AspNet.Identity.PasswordHasher
来散列密码。
您可以使用相同的方法生成将与AspNet Identity框架一起使用的哈希值。
注意:如果您想知道这是否与新WebApi使用的ApplicationUserManager
类相同,那么答案是肯定的:
public class ApplicationUserManager : UserManager<ApplicationUser>
{
}
here解释了他们这样做的原因。