Миграция пользователей AspNetSqlMembershipProvider в WebMatrix

Я ищу инструмент для миграции моих пользователей из AspNetSqlMembershipProvider пользователь к WebMatrix.WebData.WebSecurity, Я хочу разместить свой сайт в Azure и у меня много проблем с хранимой процедурой AspNet.

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

Спасибо!

1 ответ

Если пароль является единственным препятствием, не волнуйтесь. На самом деле мы не можем и не должны знать сами пароли. В большинстве систем пароли кодируются и сохраняются в таблице. В asp.net mvc4 SimpleMembershipProvider эта таблица называется webpages_membership. В этой таблице 2 столбца являются ключами: Password и PasswordSalt. Я ничего не знаю о AspNetSqlMembershipProvider, но я думаю, что должна быть соответствующая таблица, которая содержит 2 столбца с похожими именами. Миграция данных в этих 2 столбцах должна заставить его работать.

Я предлагаю сделать это следующим образом:

  1. Создайте новую учетную запись в старой системе с паролем.
  2. Создайте новую учетную запись в новой системе с другим паролем.
  3. Замените Password/PasswordSalt в новой системе теми, которые в старой системе.
  4. Попробуйте войти в новую систему с паролем старой системы.
  5. Если это удается, это доказывает, что две системы используют один и тот же механизм, и вы можете выполнить всю работу по миграции.

Подробный алгоритм можно найти здесь: http://www.jasypt.org/howtoencryptuserpasswords.html

Другие вопросы по тегам