Как мне выполнить членство пользователя на моем сайте MVC ASP.NET?

Я создаю сайт ASP.NET MVC, и мне нужно реализовать функции входа и членства.

Разве это что-то, где я качу себя? У меня уже есть таблица участников в моей базе данных, я должен создать поле хэша имени пользователя и пароля и просто проверить его? Как насчет того, чтобы пользователь вошел в систему с файлом cookie, который истекает?

Является ли это экземпляром, когда вы используете ASP.NET, встроенный в службу членства?

Неофит ASP.NET MVC ищет помощь.

Ответ 1

Когда вы создаете новый сайт ASP.NET MVC, у него уже есть членство. Проект CodePlex, упомянутый в другом ответе, нужен только в особых случаях, а именно:

  • Вы используете раннюю бета-версию структуры MVC, которая не имеет функции членства.
  • Вы хотите использовать систему аутентификации, такую ​​как OpenID, которая не поддерживается "из коробки" с MVC.
  • Вы хотите, чтобы функции администрирования членства не включались "из коробки"

Однако, как я уже сказал, базовые функции членства уже присутствуют на сайте MVC. Просто добавьте атрибут [Authorize] к любому действию, требующему входа в систему. Это обычная проверка подлинности форм, поэтому вы настроены в Web.config как на сайте, отличном от MVC (с указанием базы данных и т.д., Там много информации в Интернете об этом).

Сайт MVC по умолчанию будет содержать контроллер "учетных записей" и представления, которые вы можете настроить в соответствии с вашими потребностями.

Чтобы ответить на очевидный вопрос, нет, вы не должны "сворачивать свои собственные". Даже если вам нужна специальная аутентификация, было бы лучше создать обычного поставщика членства ASP.NET, чем создать совершенно новую структуру членства.

Обновление: Проект CodePlex был обновлен для работы с MVC 1.0

Ответ 2

Если вы хотите использовать что-то безопасное для начала, используйте либо новое членство в проекте, либо используйте http://www.codeplex.com/MvcMembership.