Asp.net
SimpleMembership 與 ASP.NET MVC 4 中的自定義數據庫架構
我想啟用 ASP.NET MVC 4 的 SimpleMembership API 以與我自己的數據庫架構集成。我的數據庫中有一個簡單的表,
Users用這些欄位呼叫:
- ID
- Name
- 密碼
- 電子郵件
- 已刪除
我已經配置了 SimpleMembership API 以使用我的數據庫:
WebSecurity.InitializeDatabaseConnection("MyStuff", "Users", "Id", "Name", autoCreateTables: true);我也可以插入一個使用者:
WebSecurity.CreateUserAndAccount(model.UserName, model.Password, new { IsDeleted = false, Email = "sampledata@gmail.com" });但是,密碼欄位(或它的雜湊)沒有插入到使用者表中(當然),它插入到另一個名為的表中,該表
webpages_Membership是通過呼叫創建的InitializeDatabaseConnection,包含很多我不需要的不必要資訊。此外,我還有其他自動創建的表,稱為 pages_OAuthMembership、webpages_Roles 和 pages_UsersInRoles,我不需要這些表。
我已經嘗試將表生成設置為 false:
WebSecurity.InitializeDatabaseConnection("MyStuff", "Users", "Id", "Name", autoCreateTables: false);但在這種情況下,CreateUserAndAccount 呼叫將引發異常,因為它不會找到 pages_Membership 表。
當我想使用 SimpleMembership API 時,看起來需要這些表。
我的問題是:當我只想要一個簡單的
Users表格時,在這種情況下我應該怎麼做?我是否必須自己編寫整個成員資格處理和身份驗證邏輯(雜湊碼生成等)?
我向產品團隊提出了同樣的問題。
SIMPLE 成員的設計目標是盡可能簡單地開箱即用。
因此,就表格而言,實際上不可能進行定制。推薦的解決方法是,仍然使用 ASP.NET Membership (SqlMembershipProvider)。