新しい MVC4 RTM インターネット アプリケーション テンプレートは、ここで説明されているように SimpleMembership プロバイダーを使用します
私の既存の MVC Web サイトは ASP.Membership フレームワークを使用しており、理想的には、これらのテーブルのユーザー データを新しい SimpleMembership テーブルに移行したいと考えています。これをやりたい理由は次のとおりです。
- EF を使用する残りのデータベースとのよりクリーンな統合
- Azure と OAuth をすぐにサポート
- 変更せずに最新の MVC4 RTM コントローラー/ビューを使用
- 既存のメンバーシップの実装は、必要なものに対して少し肥大化していると常に感じていました
そこで、今日、既存の ASP.Net メンバーシップ テーブルのデータを新しいシンプル メンバーシップ テーブルに移行する SQL スクリプトを作成しました。これはここで見つけることができます
MVC 4 Web サイトでログインをテストすると、パスワードの検証が失敗します。SimpleMembership フレームワークで作成された新しいパスワードはずっと長く見えるため、SimpleMembership は古いメンバーシップ フレームワークとは異なるパスワード アルゴリズムを使用していると思います。
したがって、私の質問は、古い ASP.Net メンバーシップ プロバイダーで「ハッシュ化された」パスワード形式を使用していたため、ユーザーの元のパスワードは回復できないため、SimpleMembership プロバイダーを機能させるにはどのようなオプションが必要ですか。
いくつかのオプションがあると思います:
- ユーザーにパスワードをリセットしてもらう
- 古い ASP.Net メンバーシップ プロバイダーと同じパスワード アルゴを使用するように SimpleMembership プロバイダーを取得します。
- 新しい MVC 4 RTM インターネット アプリケーション テンプレートを元に戻し、古い ASP.Net MemberShip プロバイダーを使用します。SimpleMemberShip フレームワークを使用したいので、これは私にとって最も望ましくないオプションです。
また、既存のメンバーシップ データベースを新しい SimpleMemberShip プロバイダーに移行しようとしている人も多いと思います。
どんな助けでも大歓迎です。
乾杯
ジム