Я хочу включить ASP.NET MVC 4 SimpleMembership API для интеграции с моей собственной схемой базы данных. У меня есть простая и простая таблица в моей базе данных под названием Users
с этими полями:
- Id
- Имя
- Пароль
- IsDeleted
Я уже настроил SimpleMembership API для использования моей базы данных:
WebSecurity.InitializeDatabaseConnection("MyStuff", "Users", "Id", "Name", autoCreateTables: true);
И я тоже могу вставить пользователя:
WebSecurity.CreateUserAndAccount(model.UserName, model.Password,
new
{
IsDeleted = false,
Email = "[email protected]"
});
Однако поле "Пароль" (или хеш) не вставлено в таблицу "Пользователи" (конечно), оно вставлено в другую таблицу с именем webpages_Membership
, которая создается с вызовом InitializeDatabaseConnection
и содержит много ненужной информации которые мне не нужны.
Кроме того, у меня есть другие автоматически созданные таблицы, называемые webpages_OAuthMembership, webpages_Roles и webpages_UsersInRoles, которые мне не нужны.
Я уже пытался установить для генерации таблицы значение false:
WebSecurity.InitializeDatabaseConnection("MyStuff", "Users", "Id", "Name", autoCreateTables: false);
Но в этом случае вызов CreateUserAndAccount вызовет исключение, потому что он не найдет таблицу webpages_Membership.
Похоже, эти таблицы нужны, когда я хочу использовать SimpleMembership API.
Мой вопрос в том, что: что мне делать в таком сценарии, когда я хочу только простую таблицу Users
и ничего больше?
Должен ли я сам написать всю обработку членства и логику аутентификации (генерация хэш-кода и т.д.)?