我想启用ASP.NET MVC 4的SimpleMembership API与我自己的数据库模式集成。我在我的数据库中有一个简单的表,名为Users with these fields:
我已经配置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调用创建的,并且包含了我不需要的很多不必要的信息。
此外,我有其他自动创建的表称为webpages_OAuthMembership,webpages_Roles和webpages_UsersInRoles,我不需要。
我已经尝试将表生成设置为false:
WebSecurity.InitializeDatabaseConnection("MyStuff",autoCreateTables: false);
但在这种情况下,CreateUserAndAccount调用将抛出异常,因为它不会找到webpages_Membership表。
当我想使用SimpleMembership API时,看起来这些表需要。
我的问题是:当我想只有一个简单的用户表,没有什么更多的情况下,我应该怎么做?
我必须自己写整个成员处理和认证逻辑(哈希码生成等)吗?