在某些需要密码解密的业务下,就需要将原本Identity中默认的Hash加密替换为可解密的加密方式。

    查看Identity源码之后,发现密码加密是由IPasswordHasher<TUser>接口提供的,相应的微软也提供了默认实现PasswordValidator<TUser> 源码👈

    我们需要新建MyPasswordHasher类,改为自定义加解密。
    通过容器注入即可。

    services.AddScoped<IPasswordHasher<IdentityUser>, MyPasswordHasher<IdentityUser>>();

    参考:
    https://stackoverflow.com/questions/26505446/how-use-custom-ipasswordhasher