Megosztás a következőn keresztül:


7. rész: Tagság és engedélyezés

szerző: Jon Galloway

Az MVC Zeneáruház egy oktatóalkalmazás, amely részletesen bemutatja, hogyan használható ASP.NET MVC és Visual Studio webfejlesztéshez.

Az MVC Zeneáruház egy egyszerű mintatár-implementáció, amely online értékesíti a zenei albumokat, és alapvető webhelyfelügyeletet, felhasználói bejelentkezést és bevásárlókocsi-funkciókat valósít meg.

Ez az oktatóanyag-sorozat részletesen ismerteti az ASP.NET MVC Music Store mintaalkalmazás létrehozásához szükséges összes lépést. A 7. rész a tagságra és az engedélyezésre vonatkozik.

A Store Manager vezérlő jelenleg bárki számára elérhető, aki felkeresi a webhelyet. Módosítsa ezt úgy, hogy korlátozza a webhelygazdák engedélyeit.

Az AccountController és a Views hozzáadása

Az MVC 3 teljes ASP.NET webalkalmazás-sablon és az ASP.NET MVC 3 üres webalkalmazás-sablon közötti különbség az, hogy az üres sablon nem tartalmaz fiókvezérlőt. A fiókvezérlőt úgy fogjuk hozzáadni, hogy a teljes ASP.NET MVC 3 webalkalmazássablonból létrehozott új ASP.NET MVC-alkalmazásból másolunk néhány fájlt.

Hozzon létre egy új ASP.NET MVC-alkalmazást a teljes ASP.NET MVC 3 webalkalmazás-sablonnal, és másolja a következő fájlokat a projekt azonos könyvtáraiba:

  1. Másolja az AccountController.cs fájlt a Vezérlők könyvtárba
  2. AccountModels másolása a Models könyvtárba
  3. Hozzon létre egy Fiók könyvtárat a Nézetek könyvtárban, és másolja oda mind a négy nézetet.

Módosítsa a vezérlő- és modellosztályok névterét, hogy az MvcMusicStore-val kezdődjön. Az AccountController osztálynak az MvcMusicStore.Controllers névteret kell használnia, az AccountModels osztálynak pedig az MvcMusicStore.Models névteret kell használnia.

Megjegyzés: Ezek a fájlok a MvcMusicStore-Assets.zip letöltésben is elérhetők, ahonnan az oktatóanyag elején másoltuk a webhelytervező fájljait. A tagsági fájlok a Kód könyvtárban találhatók.

A frissített megoldásnak a következőképpen kell kinéznie:

A Megoldáskezelő panel képernyőképe a C S fiókvezérlő ponttal, a Fiókmodellek pont CS-vel, valamint a /Fiók/mappa kiemelt fájljaival.

Rendszergazda felhasználó hozzáadása a ASP.NET konfigurációs helyhez

Mielőtt engedélyt kérnénk a webhelyünkön, létre kell hoznunk egy hozzáféréssel rendelkező felhasználót. A felhasználó létrehozásának legegyszerűbb módja a beépített ASP.NET konfigurációs webhely használata.

Indítsa el a ASP.NET konfigurációs webhelyet a Megoldáskezelőben található ikonra kattintva.

A Megoldáskezelő ablak képernyőképe, amelyen a földgömb és a kalapács ikon piros téglalapban van kiemelve.

Ezzel elindít egy konfigurációs webhelyet. Kattintson a kezdőképernyő Biztonság lapjára, majd a képernyő közepén található "Szerepkörök engedélyezése" hivatkozásra.

Képernyőkép a konfigurációs webhelyről, amelyen a Szerepkörök szakasz és a Szerepkörök engedélyezése hivatkozás látható piros téglalapban.

Kattintson a "Szerepkörök létrehozása vagy kezelése" hivatkozásra.

Képernyőkép a konfigurációs webhelyről, amelyen a Szerepkörök szakasz és a Szerepkörök létrehozása vagy kezelése hivatkozás látható piros téglalapban.

Írja be a "Rendszergazda" nevet a szerepkör neveként, és nyomja le a Szerepkör hozzáadása gombot.

Képernyőkép a konfigurációs ablakról, amelyen a Rendszergazda látható az Új szerepkör neve mezőben, és piros nyíllal van kiemelve.

Kattintson a Vissza gombra, majd a bal oldalon a Felhasználó létrehozása hivatkozásra.

Képernyőkép a konfigurációs webhelyről, amelyen a Felhasználók szakasz és a Felhasználó létrehozása hivatkozás látható piros téglalapban.

Töltse ki a bal oldali felhasználóiadat-mezőket a következő információk használatával:

mező Érték
Felhasználói név Ügyintéző
jelszó
Jelszó megerősítése
e-mail (minden e-mail-cím működni fog)
biztonsági kérdés (bármit is szeretne)
Biztonsági válasz (bármit is szeretne)

Megjegyzés:

  • Az előző táblázatban a jelszó el lett hagyva.
  • Természetesen bármilyen jelszót használhat. Az alapértelmezett jelszóbiztonsági beállításokhoz 7 karakter hosszú jelszó szükséges, amely egy nem alfanumerikus karaktert tartalmaz.

Válassza ki a felhasználó rendszergazdai szerepkörét, és kattintson a Felhasználó létrehozása gombra.

Képernyőkép a konfigurációs webhelyről, amelyen a Szerepkörök szakasz látható, amelyen a Rendszergazda szerepkör jelölőnégyzet ki van jelölve, és piros téglalappal van kiemelve.

Ekkor megjelenik egy üzenet, amely jelzi, hogy a felhasználó sikeresen létrejött.

A konfigurációs webhely képernyőképe, amelyen egy üzenet látható, amely szerint a felhasználói fiók létrehozása sikeresen befejeződött.

Most már bezárhatja a böngészőablakot.

Szerepköralapú engedélyezés

Most az [Engedélyezés] attribútummal korlátozhatjuk a StoreManagerControllerhez való hozzáférést, és megadhatja, hogy a felhasználónak rendszergazdai szerepkörrel kell rendelkeznie ahhoz, hogy hozzáférjen az osztály bármely vezérlőműveletéhez.

[Authorize(Roles = "Administrator")]
public class StoreManagerController : Controller
{
    // Controller code here
}

Megjegyzés: Az [Engedélyezés] attribútum adott műveleti metódusokra és a Vezérlő osztály szintjén helyezhető el.

Most a /StoreManager böngészőben megjelenik egy Bejelentkezési párbeszédpanel:

Képernyőkép a zeneáruház weblapjáról, amelyen a bejelentkezési párbeszédpanel látható felhasználónév és jelszó szövegmezőkkel.

Miután bejelentkezett az új rendszergazdai fiókkal, a korábbiakhoz hasonlóan megnyithatjuk az Album szerkesztése képernyőt.