ASP.NET MVC 4 の SimpleMembership API を有効にして、独自のデータベース スキーマと統合したいと考えています。Users
データベースに、これらのフィールドで呼び出されるプレーンでシンプルなテーブルがあります。
- ID
- 名前
- パスワード
- Eメール
- 削除済み
データベースを使用するように SimpleMembership API を既に構成しています。
WebSecurity.InitializeDatabaseConnection("MyStuff", "Users", "Id", "Name", autoCreateTables: true);
また、ユーザーも挿入できます。
WebSecurity.CreateUserAndAccount(model.UserName, model.Password,
new
{
IsDeleted = false,
Email = "sampledata@gmail.com"
});
ただし、Passwordフィールド(またはそのハッシュ)はUsersテーブルに挿入されず(もちろん)、呼び出しwebpages_Membership
で作成された別のテーブルに挿入されInitializeDatabaseConnection
、必要のない多くの不要な情報が含まれています。
また、必要のない webpages_OAuthMembership、webpages_Roles、webpages_UsersInRoles というテーブルが自動的に作成されました。
私はすでにテーブル生成を false に設定しようとしました:
WebSecurity.InitializeDatabaseConnection("MyStuff", "Users", "Id", "Name", autoCreateTables: false);
ただし、この場合、CreateUserAndAccount 呼び出しは webpages_Membership テーブルを見つけられないため、例外をスローします。
SimpleMembership API を使用するには、これらのテーブルが必要なようです。
Users
私の質問は次のとおりです。シンプルなテーブルだけが必要な場合、このようなシナリオではどうすればよいですか?
メンバーシップの処理全体と認証ロジック (ハッシュ コードの生成など) を自分で作成する必要がありますか?