ASP.NET MVC4 Security, Authentication and Authorization

Pracuję nad nowym projektem asp.net mvc4 przy użyciu wersji beta Visual Studio 2011 i próbuję skupić się na całym bezpieczeństwie. Jest to wewnętrzna aplikacja intranetowa, która początkowo używa pojedynczego logowania, więc użytkownik nie zostanie (jeszcze) zapytany o identyfikator / hasło systemu Windows. Firma ma niestandardową aplikację do przechowywania ról dla różnych aplikacji i będzie dostępna za pośrednictwem wywołania procedury składowanej. Będzie pobierać identyfikator logowania użytkownika i zwracać jakąś kolekcję zawierającą role np. „MyApp.Data”, „MyApp.User,„ MyApp.Admin ”. Jak to się nazywa - czy jest to niestandardowy dostawca członkostwa, niestandardowy dostawca ról lub coś innego?

Przeczytałem wszystkie tajniki autoryzacji, uwierzytelniania, członkostwa, ról itd., A teraz nie widzę drewna dla drzew. Przeczytałem, że istniejące obiekty zabezpieczeń ASP.NET zostały wypróbowane i przetestowane, a jeśli nie ma bardzo złożonych wymagań, wystarczą wbudowane. Dlatego cieszę się, że mogę używać już istniejących.

Więc jeśli użytkownik jest już zalogowany do sieci, oznacza to, że jest uwierzytelniony - poprawny? Jeśli tak, to muszę zaimplementować autoryzację. Czy konieczne jest udekorowanie każdego kontrolera lub akcji atrybutem Autoryzuj? Jeśli tak, to w jaki sposób część „ABC” [Autoryzuj (Role = „ABC”)] jest ustawiana, gdy odzyskuję role z mojej niestandardowej aplikacji do przechowywania ról?

Przeczytałem kilka artykułów i postów na blogu, w tym jeden od Jona Gallowaya, ale pod koniec zgubiłem:

Dostosowywanie uwierzytelniania i autoryzacji we właściwy sposób

Tyle pytań ... jeśli ktoś wie o dobrym opisie wysokiego poziomu tego, jak to wszystko się wisi, to ja mam uszy :)

questionAnswers(3)

yourAnswerToTheQuestion