2013-07-20 23 views
5

Próbuję ponownie nauczyć się ASP.NET i zbudować pewną aplikację, jednak samouczek wydaje się być działającymi spodenkami.Zarządzanie użytkownikami za pomocą ASP.NET MVC 4

Rozumiem ASP.NET ma teraz wbudowane członkostwo, które umożliwia użytkownikom tworzenie i edytowanie, logowanie do użytkowników. Czy jest jednak dla mnie sposób na stworzenie kontrolera użytkownika? Z tego, co przeczytałem, jest to duże nie, ponieważ może kolidować z AccountController. Może to źle, ale najpierw chciałbym się upewnić.

Rozumiem również, że mogę użyć słowa [Authorize] w kontrolerze (akcji lub klasie), aby ograniczyć dostęp do użytkowników. Jednak jeśli podam [Authorize (Roles = "Admin")] Jak mogę zdefiniować role dla użytkowników? Czy istnieje pole, które już istnieje w tym członkostwie, lub czy muszę dostarczyć drugie pakiety nugetów? Jeśli jest to pole od użytkownika, to w jaki sposób rozpoznaje on role w tabeli użytkowników?

Odpowiedz

4

Do uwierzytelniania i autoryzacji w ASP.NET, rzucić okiem na uwierzytelnianie formularzy i Membership Provider (i dostawcze Rola ról)

Szybkie wyszukiwanie daje ten artykuł: Here

rzucić okiem na inne wyszukiwania dla "niestandardowe Membership Provider"

to również wygląda interesująco: How do I create a custom membership provider for ASP.NET MVC 2?

+0

Po prostu pytania, jeśli miałbyś wybrać dla aplikacji, czy wybrałbyś niezwyczajne członkostwo, czy pre-made przez MS? – Jseb

+1

Zdecydowanie popatrz na budowanie niestandardowego dostawcy członkostwa, co oznacza, że ​​możesz zmapować to do magazynu danych własnych użytkowników i wystarczy zaimplementować (zastąpić) potrzebne metody. następnie użyj standardowego CRUD, aby edytować dane użytkownika. –

10

jesteś confus wiele rzeczy. Asp.net jest podstawową technologią internetową i są na niej trzy technologie. Formularze internetowe, strony internetowe i MVC.

Członkostwo jest częścią asp.net od wersji 2, wydanej w 2005 roku. To nic nowego. Przez lata pisano o tym dużo.

Jeśli używasz MVC, który wydaje się, że jesteś, i używasz MVC4, to domyślny szablon internetowy używa SimpleMembership, który nie jest kompatybilny z wbudowanym edytorem członkostwa w Visual Studio (znanym jako Narzędzie do administrowania witryną WWW lub WSaT). Jest to zgodne tylko ze starymi tabelami bazy danych SqlMembership, a SimpleMembership nie używa tych tabel.

Możesz używać SqlMembership z MVC4, ale musisz skonfigurować go, aby używać SqlMembership. Lub po prostu nie możesz używać WSaT i samemu skonfigurować swojego użytkownika.

Aha, i nie słuchaj ludzi, którzy mówią ci, aby tworzyć dostawców członkostwa niestandardowego. Jest to najgorsza z możliwych porad, chyba że wiesz, co robisz, ponieważ nietrywialne jest tworzenie bezpiecznych technik haszowania haseł. A 99% osób, które próbują (nawet ludzie, którzy powinni wiedzieć lepiej) popełniają błąd, chyba że zwracają bardzo baczną uwagę.

Skorzystaj z usług dostawcy z renomowanego źródła, chyba że masz BARDZO dobry powód, aby tego nie robić. Następnie sprawdź, sprawdź dwukrotnie, potrójnie sprawdź swój kod skrótu, a następnie poproś eksperta o sprawdzenie.

Powiązane problemy