Как вы реализовываете авторизацию в ASP.net MVC?
www.asp.net/identity
И забейте на старый membership
Добрый день!
Использую стандартный Membership API. Честно говоря, пока что не замечал за ним никаких ошибок в работе/глюков или странного поведения. Я не анализировал sql-код, описанный в хранимых процедурах Membership API, и потому не могу рассуждать о его "монструозности", но лично для меня у него есть следующие плюсы:
1) можно быстро развернуть с помощью утилиты aspnet_regsql
2) можно с помощью той же утилиты настроить его установку таким образом, чтобы установить только то, что Вам нужно (либо всё, либо только профили, либо роли и т.д.)
3) имеется много информации по работе с ним (чего не скажешь про Identity, во всяком случае, книжек с Identity, в которых подробно бы описывались принципы работы с ним, я не обнаружил)
4) с ним довольно просто и легко работать в коде (подробно можно прочитать в книжках "Microsoft ASP .NET 4 с примерами на c# 2010 для профессионалов" и "ASP.NET MVC 3/4 Framework с примерами на C# для профессионалов", особенно в первой книге, где в основном рассказывается про ASP.NET WebForms, очень подробно описана авторизация, аутентификация, членство, роли, профили - да все, что есть в ASP.NET, поэтому эту книгу стоит почитать. Вторая книжка - уже чисто по архитектуре ASP.NET MVC, и там основ членства, авторизации, ролей и прочего уже нет.)
Но есть и минусы:
1) использует стандартную схему БД - "dbo". Чтобы подружить его с другими схемами, нужно писать свой, кастомный membership provider.
2) в нескольких источниках слышал о том, что он, как и сказал Alexey_Gagarin, "моструозен", что код sql, используемый в хранимых процедурах, не оптимизирован. Повторюсь, я не проверял, но мне его функциональности пока что вполне достаточно.
Успехов!