Сбои входа в систему после обновления ASP.net 4.0 от 3,5

Я не могу войти в систему с помощью любого использования учетных записей членства версия .net 4.0 приложения. Это перестало работать как, он - неправильный пароль, и FailedPasswordAttemptCount увеличен в my_aspnet_membership таблице. (Я использую членство с mysql поставщиком членства.)

Я могу создать новых пользователей. Они появляются в базе данных. Но я не могу войти в систему с помощью новых удостоверений пользователя (да, IsApproved равняется 1).

Одна подсказка - то, что хешированные пароли в базе данных дольше для пользователей, созданных с помощью asp.net 4,0 версии, например, 3lwRden4e4Cm+cWVY/spa8oC3XGiKyQ2UWs5fxQ5l7g =, и старые .net 3.5 - все как +JQf1EcttK+3fZiFpbBANKVa92c =.

Я могу все еще войти в систему при соединении с тем же дб с версией .net 3.5, но только в старые учетные записи, не новые, созданные с версией .net 4.0. 4,0 версии не могут войти ни в какие аккаунты.

Я пытался отбросить целую базу данных по своей системе тестирования, таблицы членства затем автоматические созданный на первом показе, но это - все еще то же, может создать пользователей, но не может войти в систему.

6
задан lomac 29 April 2010 в 16:54
поделиться

2 ответа

См .: ЗДЕСЬ

Алгоритм хеширования по умолчанию для .net 4.0 был изменен. Алгоритм хеширования по умолчанию теперь HMACSHA256. В более ранних версиях ASP.NET использовался более старый алгоритм HMACSHA1.

Чтобы настроить веб-приложение ASP.NET 4 для использования старого алгоритма HMACSHA1, добавьте следующий параметр в раздел system.web файла Web.config:

<machineKey validation="SHA1"/>
13
ответ дан 8 December 2019 в 15:59
поделиться

У меня точно такая же проблема. У меня есть веб-приложение как в версии 3.5, так и в версии 4.0, и только «старые» учетные записи работают с экземпляром версии 3.5.

Надеюсь, у кого-то есть ответ!

ОБНОВЛЕНИЕ:

Я изменил passwordFormat на Clear, и я смог создать нового пользователя и войти в систему с приложением 4.0. Похоже, что-то изменилось в способе хеширования паролей.

ОБНОВЛЕНИЕ 2:

Мне удалось заставить работать одну из "старых" учетных записей. С указанным выше изменением passwordFormat я изменил столбец PasswordFormat в my_aspnet_membership на 0 и вручную установил пароль в той же таблице. Хотя это запутанно и запутанно, это позволило аккаунту получить это. Я собираюсь попробовать сбросить пароль и посмотреть, исправит ли это неработающие учетные записи.

2
ответ дан 8 December 2019 в 15:59
поделиться
Другие вопросы по тегам:

Похожие вопросы: