Asp.net MySql.NET成员资格提供程序拒绝升级后的登录
我最近将MySql Connector/NET 6.0.4.0升级到了版本6.4.4.0。我的站点使用MySql成员资格提供程序来处理登录,但由于升级,没有用户可以登录。也就是说,Asp.net MySql.NET成员资格提供程序拒绝升级后的登录,asp.net,.net,asp.net-membership,mysql-connector,Asp.net,.net,Asp.net Membership,Mysql Connector,我最近将MySql Connector/NET 6.0.4.0升级到了版本6.4.4.0。我的站点使用MySql成员资格提供程序来处理登录,但由于升级,没有用户可以登录。也就是说,Membership.ValidateUser(用户,密码)对以前有效的用户名和密码返回false 我意识到我没有在web.config中的任何地方指定加密/散列密钥,也许新版本在默认情况下会以不同的方式散列密码?如果我创建了一个新用户,他们可以很好地登录,只是所有的老用户都不能再登录了 是否有一种解决方法可以避免数百
Membership.ValidateUser(用户,密码)
对以前有效的用户名和密码返回false
我意识到我没有在web.config中的任何地方指定加密/散列密钥,也许新版本在默认情况下会以不同的方式散列密码?如果我创建了一个新用户,他们可以很好地登录,只是所有的老用户都不能再登录了
是否有一种解决方法可以避免数百人不得不设置新密码?或者,如果我以后再次升级,至少可以阻止这个问题的再次发生
web.config
<system.web>
<roleManager enabled="true" cacheRolesInCookie="true" cookieTimeout="240" createPersistentCookie="true" cookieSlidingExpiration="true" defaultProvider="MySQLRoleProvider">
<providers>
<add name="MySQLRoleProvider" autogenerateschema="true" type="MySql.Web.Security.MySQLRoleProvider, MySql.Web, Version=6.4.4.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" connectionStringName="LocalMySqlServer" applicationName="/"/>
</providers>
</roleManager>
<membership defaultProvider="MySQLMembershipProvider">
<providers>
<clear/>
<add name="MySQLMembershipProvider" type="MySql.Web.Security.MySQLMembershipProvider, MySql.Web, Version=6.4.4.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" connectionStringName="LocalMySqlServer" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" applicationName="/" requiresUniqueEmail="true" passwordFormat="Hashed" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="5" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" passwordStrengthRegularExpression=""/>
</providers>
</membership>
...
</system.web>
...
我正在使用ASP.NET3.5并连接到MySQL5
编辑这件事变得更加棘手;似乎有些用户仍然可以登录,但有些用户不能。我以前的登录确实停止了工作,我已经检查过它没有被锁定或其他任何东西