我们在asp.net上开发了一个应用程序。它使用具有websecurity功能的成员资格提供程序来注册帐户和日志用户。
我们有另一个需要共享同一个数据库的应用程序。这个是在asp.Net Core上开发的。它不需要登录,但需要在会员提供商格式上注册帐户。
由于两个系统都不兼容,我们希望在表webpages_Membership上手动编写密码。
是否可以使用ASP.Net应用程序中使用的相同salt + hash在.Net Core应用程序上存储密码?
如果没有,有什么方法可以解决它吗?
我看到的唯一解决方案是在我们的表中创建自己的登录系统,并使我们的ASP.Net应用程序适应此目的;但在这种情况下,我需要做很多工作,而我更愿意找到另一种解决方案。
由于
答案 0 :(得分:1)
也许您可以从两个应用程序中使用System.Security.SecureString,以确保数据库值兼容?
您可以使用这样的代码将用户输入的字符串转换为SecureString
public static SecureString ToSecureString( this string source )
{
if ( source == null )
{
return null;
}
var securePassword = new SecureString();
foreach ( char c in source )
{
securePassword.AppendChar( c );
}
securePassword.MakeReadOnly();
return securePassword;
}