我从迁移ColdFusion的到ASP.Net MVC应用程序,并有一个小问题,我似乎无法左右我的头。原始应用程序将数据库中的用户密码存储在MD5散列格式中,不含salt。我正在使用ASP.Net会员店,并希望尽可能为现有用户提供无缝过渡。这是我正在考虑的可能性...设置会员店密码
1)由于我无法解密他们当前密码的值,我正在考虑将这个旧密码存储在表中,在登录时检查它是否...如果它不是空和他们的密码匹配,我提示他们更新他们的密码,然后它将在asp.net会员表中正确设置密码并清除旧密码,永不再次检查。
2)用户登录他们的电子邮件,而不是他们的网名,所以我想他们的网名重置每个人的密码,并迫使他们首次登录后更改的。唯一的问题是,我不知道我可以通过SQL更新他们的密码,而不需要当前的密码。执行aspnet_Membership_SetPassword proc似乎不会自己加密密码。
你说什么?
是的,ASP.NET并没有给你太多的控制权限在默认提供程序中进行散列;不过,您可以轻松地在自定义会员提供商中完成此操作。有趣的解决方案。 – technophile 2009-10-01 16:19:16