我想启用 ASP.NET MVC 4 的 SimpleMembership API 以与我自己的数据库架构集成。我的数据库中有一个简单的表,Users
用这些字段调用:
- ID
- 姓名
- 密码
- 电子邮件
- 已删除
我已经配置了 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
表格时,在这种情况下我应该怎么做?
我是否必须自己编写整个成员资格处理和身份验证逻辑(哈希码生成等)?