ASP.NET MVC, форма аутентификации или пользовательская при использовании EF 4?

Я новичок в мире ASP.NET. Поскольку я хочу использовать ORM, кажется, я хотел бы, чтобы сущность представляла пользователя или члена или что-то еще, а не какие-то данные, спрятанные API-интерфейсом проверки подлинности форм. На самом деле я не понимаю, как я могу жить без него.

Как люди справляются с этим? Свернуть собственную аутентификацию? Или есть наилучшая практика для включения проверки подлинности форм с Entity Framework?

Короче говоря, поскольку мне в любом случае нужна сущность пользователя и роли для запросов, должен ли я пропустить аутентификацию форм или найти способ ее использовать?

Спасибо


person Keith Myers    schedule 03.09.2010    source источник


Ответы (2)


EF и Forms Auth на самом деле являются двумя разными областями. Вы можете очень легко использовать Forms Auth без членства в ASP.NET и без особых усилий развернуть собственного поставщика.

Этот урок покажет вам, как:

http://msdn.microsoft.com/en-us/library/ms172766(VS.80).aspx

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

person Keith Adler    schedule 03.09.2010
comment
Я собираюсь взглянуть на это завтра и большое спасибо за быстрый ответ. Вся эта область была довольно запутанной... - person Keith Myers; 04.09.2010

FormsAuthentication сам по себе не заботится о хранилище удостоверений и может проверять только учетные данные, хранящиеся в разделе <credentials> web.config, через Authenticate. Стандартные реализации страницы входа используют статический класс Membership для управления идентификаторы и учетные данные в MembershipProvider, указанных в файле конфигурации (обычно SqlProfileProvider).

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

Таким образом, вы можете безопасно использовать EF для поддержки своих профилей пользователей, включая учетные данные, и выполнять аутентификацию предоставленных учетных данных на странице входа, продолжая использовать FormsAuthnetication.

person Franci Penov    schedule 03.09.2010