Вы должны использовать Членство в ASP.NET & Аутентификация по формам для вашей системы аутентификации.
Это просто для настройки в сочетании с базой данных SQL Server , встроенные механизмы для безопасного хеширования или шифрования паролей, для идентификации пользователей используется маркер аутентификации на основе файлов cookie и доступ на основе ролей. Система управления (RBAC), которая хорошо интегрирована в ASP.NET. Например, RBAC можно использовать в web.config для запрета доступа к путям с вашим сайтом:
например.
<configuration>
<location path="Admin">
<system.web>
<authorization>
<allow roles="Administrator" />
<deny users="*" />
</authorization>
</system.web>
</location>
</configuration>
У вас также есть атрибут [Authorize], который вы можете использовать в своих методах действий:
[Authorize(Roles="Administrator")]
public ActionResult AdminPage()
{
return View();
}
Если вам нужно действительно простое решение без ролей и, возможно, без базы данных SQL Server, вы также можете просто использовать прямую аутентификацию форм ASP.NET без членства в ASP.NET. Однако для любого реального приложения членство в ASP.NET является более полным решением.
Обратите внимание, что вам не нужно использовать код аутентификации в контроллере учетной записи или модели учетной записи в приложении MVC3 по умолчанию. На мой взгляд, это излишне.
Что бы вы ни делали, не изобретайте колесо заново. Аутентификация и управление доступом на основе ролей не являются тривиальными для получения правильных результатов, поэтому вам следует использовать встроенное решение в ASP.NET.
См. Также это руководство по MVC .