2009-02-04 6 views
10

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

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

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

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

+0

У меня подобное сомнение здесь, я могу спросить вас, что вы делали в конце концов? – wallyqs

ответ

14

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

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

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

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

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

Update: CodePlex project был обновлен для работы с MVC 1.0

4

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