【问题标题】:How to Change AspNet Identity Password Hash to AspNet.Core Identity Password Hash如何将 AspNet 身份密码哈希更改为 AspNet.Core 身份密码哈希
【发布时间】:2019-10-22 11:48:45
【问题描述】:

我们正在使用 Identity Server 4 进行用户登录身份验证和授权。我们在登录中实现了 ASP NET.Core 身份密码哈希,并在注册中使用了 ASPNET.Identity 密码哈希。我们如何将注册密码哈希更改为登录密码哈希。

我已经安装了 ASPNET 核心 nuget 包并使用了 IPassword 哈希方法。我不知道如何解决这个问题。

【问题讨论】:

  • 你不能像那样简单地将一个哈希值转换成另一个。
  • 有什么方法可以实现吗?
  • 没有,但我已经在我的回答中给了你一些关于如何解决这个问题的想法和想法。

标签: asp.net security identityserver4 password-hash sitecore9


【解决方案1】:

你不能简单地将哈希值从一个密码哈希转换为另一个,除非它们当然使用完全相同的哈希机制(在这种情况下,首先不需要转换)。

我在几个项目中遇到过这种情况,我们更改了密码散列机制,并且有效地,我们不得不向每个人发送密码重置电子邮件。在另一个项目中,这是不可行的,所以基本上我们强制用户在第一次登录时更改密码(我们使用旧的哈希来验证他们当前的密码),然后使用新的哈希对新密码进行哈希处理。

【讨论】:

  • 感谢您的回答。我们可以用 Asp.Net Core Identity 密码哈希覆盖或替换 Asp.Net.Identity 中的密码哈希吗?
  • 是的,理论上你应该可以设置你的CustomUserManager.PasswordHasher = new YourCustomPasswordHasherYourCustomPasswordHasher 是 ASP.NET Core 密码哈希的实现,因为它是开源的。所以基本上你需要自己移植代码。
猜你喜欢
  • 1970-01-01
  • 2017-06-19
  • 1970-01-01
  • 1970-01-01
  • 2015-12-17
  • 1970-01-01
  • 1970-01-01
  • 2019-05-25
  • 1970-01-01
相关资源
最近更新 更多