繁体   English   中英

在 ASP .NET Core 3.1 中发出验证用户密码的问题

[英]Issue validating user passwords in ASP .NET Core 3.1

我有一个使用 .NET Framework 4.7.1 和 ASP .NET Identity 构建的应用程序来验证我们的用户,我正在使用 IdentityServer4 和 .NET CORE 3.1 和 Identity Core 重写这个应用程序的身份验证部分,我遇到了一个问题:在我在新应用程序中登录,旧应用程序停止验证我在新应用程序中使用的用户。 重现步骤:

  1. 登录旧应用程序:成功
  2. 登录新应用:成功
  3. 旧应用登录:失败,无法验证用户密码

有谁知道如何解决这个问题?

谢谢

我发现新应用程序正在更新数据库中的用户密码哈希。 找到之后,我在 Startup.ConfigureServices(IServiceCollection services) 方法的开头添加了如下几行代码:

services.Configure<PasswordHasherOptions>(options => {
    options.CompatibilityMode = PasswordHasherCompatibilityMode.IdentityV2;
});

此代码启用了与旧版本 .NET Identity 的兼容模式,这解决了问题,用户的密码得到了很好的验证,并且不再对数据库进行任何更新。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM