将MySql ASP.NET成员资格提供程序与现有用户一起使用

时间:2010-05-11 14:05:31

标签: mysql postgresql mono asp.net-membership

我的任务是将现有的成熟ASP.NET 2.0网站迁移到NHibernate,Mono和MySQL或postgres。我有点困惑,因为会员提供商如何对密码进行加密。如果我进行切换并使用MySQL成员资格提供程序(outlined in this question)或AspSqlProvider,现有用户是否可以登录?

我想我会更容易问:如何访问ASP.NET成员资格提供程序使用的加密密钥,该密钥对密码加密,以便我可以在第三方提供程序中使用相同的加密密钥?

1 个答案:

答案 0 :(得分:1)

您为此网站说了多少用户?是公开访问的,还是在公司局域网中使用的东西?

将现有的成员资格数据库转移到MySQL提供程序生成的模式可能会很有趣。我甚至不确定他们使用的表模式有多相似,尽管我希望它们非常接近。

如果用户数量相对较少,我会强烈考虑在更改为新系统时强制重置密码。

编辑刚刚看到你在我输入的时候添加了postgres - 如果你的数据库选择仍然在空中,那么使用基于ORM的提供程序可能会更容易为你提供一些便携性(和一致的行为)

如果使用nhibernate,我最近正在寻找一个基于nhibernate的会员提供商,最后选择了这个:Fluent NHibernate Membership Provider (CodeProject)。通过最少的修改让它为我工作,但它是一个没有这些问题的绿地项目。它虽然是单声道:)

发现:Membership Providers - 请参阅“DataSchema”部分,aspnet_Membership表。看起来获取盐不会是一个问题,所以你应该能够让这个工作没有密码重置。