我们有一个使用ASP.NET内置成员资格的生产站点。现在我们不想使用一些自定义属性扩展表,因此我们使用ADO.Net实体构建了一个自定义成员资格提供程序。
一切正常,我们可以创建新用户,登录控件也可以正常工作。我们将aspnet_Membership表中的每个现有用户导入到自定义表中,并将密码字段复制到自定义表中的自定义密码字段中。
不幸的是,这些现有用户无法登录系统。我们在调试系统时发现密码没有正确解密(我们使用的是passwordFormat =“Encrypted”)。
例如:
我们的用户密码为testing123
。当我们从数据库解密密码时,它返回睝렱ꀱ䧥꾖饱testing123
有人知道我们在这里做错了吗?
修改 我发现this answer描述了你应该从你的密码中删除盐(8个字节)。在那种情况下,这是我的解决方案,但是我遇到了新用户密码的问题,默认情况下工作正常。没有其他可能吗?