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


Biztonsági alapismeretek és ASP.NET támogatás (VB)

által Scott Mitchell

Megjegyzés:

A cikk írása óta a ASP.NET tagsági szolgáltatókat felváltotta ASP.NET Identity. Határozottan javasoljuk, hogy frissítse az alkalmazásokat a ASP.NET Identitásplatform használatára a cikk írásának időpontjában kiemelt tagsági szolgáltatók helyett. ASP.NET Identitás számos előnnyel rendelkezik a ASP.NET tagsági rendszerrel szemben, beleértve a következőket:

  • Jobb teljesítmény
  • Jobb bővíthetőség és tesztelhetőség
  • Az OAuth, az OpenID Connect és a kéttényezős hitelesítés támogatása
  • Jogcímalapú identitástámogatás
  • Jobb együttműködés a ASP.Net Core-jal

PDF letöltése

Ez az első oktatóanyag egy oktatóanyag-sorozatban, amely a látogatók webes űrlapon keresztüli hitelesítésének, bizonyos lapokhoz és funkciókhoz való hozzáférés engedélyezésének, valamint a felhasználói fiókok ASP.NET-alkalmazásokban való kezelésének technikáit mutatja be.

Bevezetés

Mi az az egy dolog, amit mind a fórumok, e-kereskedelmi oldalak, online e-mail oldalak, portál oldalak és közösségi hálózati oldalak közös? Mindegyik kínál felhasználói fiókokat. A felhasználói fiókokat kínáló webhelyeknek számos szolgáltatást kell nyújtaniuk. Legalább az új látogatóknak képesnek kell lenniük fiók létrehozására, és a visszatérő látogatóknak be kell tudniuk jelentkezni. Az ilyen webalkalmazások a bejelentkezett felhasználó alapján hozhatnak döntéseket: egyes lapok vagy műveletek csak a bejelentkezett felhasználókra vagy a felhasználók egy bizonyos részhalmazára korlátozódhatnak; más lapok a bejelentkezett felhasználóra vonatkozó információkat jeleníthetnek meg, vagy több vagy kevesebb információt jeleníthetnek meg attól függően, hogy melyik felhasználó tekinti meg az oldalt.

Ez az első oktatóanyag egy oktatóanyag-sorozatban, amely a látogatók webes űrlapon keresztüli hitelesítésének, bizonyos lapokhoz és funkciókhoz való hozzáférés engedélyezésének, valamint a felhasználói fiókok ASP.NET-alkalmazásokban való kezelésének technikáit mutatja be. Az oktatóanyagok során a következőket vizsgáljuk meg:

  • Felhasználók azonosítása és bejelentkezése egy webhelyre
  • Az ASP.NET tagsági keretrendszerét használja a felhasználói fiókok kezeléséhez.
  • Felhasználói fiókok létrehozása, frissítése és törlése
  • Weblaphoz, könyvtárhoz vagy adott funkcióhoz való hozzáférés korlátozása a bejelentkezett felhasználó alapján
  • Az ASP.NET Szerepkörök keretrendszer használatával társítsa a felhasználói fiókokat szerepkörökhöz.
  • Felhasználói szerepkörök kezelése
  • Weblaphoz, könyvtárhoz vagy adott funkcióhoz való hozzáférés korlátozása a bejelentkezett felhasználó szerepköre alapján
  • Az ASP.NET biztonsági webvezérlőinek testreszabása és kiterjesztése.

Ezek az oktatóanyagok tömörek, és részletes útmutatást nyújtanak rengeteg képernyőfelvétellel, hogy vizuálisan végigvezethessenek a folyamaton. Minden oktatóanyag C# és Visual Basic verzióban érhető el, és tartalmazza a használt teljes kód letöltését. (Ez az első oktatóanyag a magas szintű biztonsági fogalmakra összpontosít, ezért nem tartalmaz társított kódot.)

Ebben az oktatóanyagban az űrlaphitelesítés, engedélyezés, felhasználói fiókok és szerepkörök implementálásához szükséges fontos biztonsági fogalmakat és a ASP.NET elérhető létesítményeket tárgyaljuk. Lássunk hozzá!

Megjegyzés:

A biztonság minden olyan alkalmazás fontos eleme, amely kiterjed a fizikai, technológiai és szakpolitikai döntésekre, és magas szintű tervezést és tartományismeretet igényel. Ez az oktatóanyag-sorozat nem szolgál útmutatóként a biztonságos webalkalmazások fejlesztéséhez. Inkább az űrlaphitelesítésre, az engedélyezésre, a felhasználói fiókokra és a szerepkörökre összpontosít. Bár ebben a sorozatban néhány, a problémák körül felmerülő biztonsági fogalmat tárgyalunk, a többit nem tárjuk fel.

Hitelesítés, engedélyezés, felhasználói fiókok és szerepkörök

A hitelesítés, az engedélyezés, a felhasználói fiókok és a szerepkörök négy olyan kifejezés, amelyet az oktatóanyag-sorozat során nagyon gyakran használunk, ezért szeretnék egy rövid időt szánni arra, hogy ezeket a kifejezéseket a webes biztonság kontextusában definiáljuk. Egy ügyfél-kiszolgáló modellben, például az interneten számos olyan forgatókönyv van, amelyben a kiszolgálónak azonosítania kell a kérést küldő ügyfelet. A hitelesítés az ügyfél identitásának megállapítására vonatkozó folyamat. A sikeresen azonosított ügyfelet hitelesítettnek nevezik. Az azonosítatlan ügyfél hitelesítés nélkülinek vagy névtelennek minősül.

A biztonságos hitelesítési rendszerek a következő három szempont közül legalább egyet magukban foglalnak: valamit, amit tud, valamit, ami van, vagy valami, amit ön használ. A legtöbb webalkalmazás olyan dologra támaszkodik, amit az ügyfél tud, például jelszóra vagy PIN-kódra. A felhasználó azonosításához használt adatokat – például a felhasználónevét és a jelszavát – hitelesítő adatoknak nevezzük. Ez az oktatóanyag-sorozat az űrlaphitelesítésre összpontosít, amely egy olyan hitelesítési modell, amelyben a felhasználók egy weboldal űrlapján megadva a bejelentkezési adatokat, lépnek be a webhelyre. Korábban mindannyian tapasztaltunk ilyen típusú hitelesítést. Lépjen bármely e-kereskedelmi webhelyre. Ha készen áll a kijelentkezésre, a rendszer arra kéri, hogy jelentkezzen be úgy, hogy beírja a felhasználónevet és a jelszót egy weblap szövegmezőibe.

Az ügyfelek azonosítása mellett előfordulhat, hogy a kiszolgálónak korlátoznia kell, hogy milyen erőforrások vagy funkciók érhetők el a kérést küldő ügyféltől függően. Az engedélyezés annak meghatározására szolgáló folyamat, hogy egy adott felhasználó rendelkezik-e jogosultságokkal egy adott erőforráshoz vagy funkcióhoz való hozzáféréshez.

A felhasználói fiókok egy adott felhasználóval kapcsolatos adatok tárolására szolgáló tárolók. A felhasználói fiókoknak minimálisan tartalmazniuk kell azokat az információkat, amelyek egyedileg azonosítják a felhasználót, például a felhasználó bejelentkezési nevét és jelszavát. Ezen alapvető információk mellett a felhasználói fiókok tartalmazhatnak például a felhasználó e-mail-címét; a fiók létrehozásának dátuma és időpontja; a legutóbbi bejelentkezés dátuma és időpontja; vezeték- és utónév; telefonszám; és a levelezési cím. Űrlaphitelesítés használatakor a felhasználói fiókok adatait általában egy relációs adatbázisban, például a Microsoft SQL Serverben tárolják.

A felhasználói fiókokat támogató webalkalmazások tetszés szerint szerepkörökbe csoportosíthatják a felhasználókat. A szerepkör egyszerűen egy felhasználóra alkalmazott címke, amely absztrakciót biztosít az engedélyezési szabályok és az oldalszintű funkciók meghatározásához. Előfordulhat például, hogy egy webhely rendszergazdai szerepkörrel rendelkezik olyan engedélyezési szabályokkal, amelyek csak a rendszergazdának engedélyezik az adott weboldalakhoz való hozzáférést. Ezenkívül az összes felhasználó számára elérhető lapok (beleértve a nem rendszergazdákat is) további adatokat jeleníthetnek meg, vagy további funkciókat biztosíthatnak, ha a rendszergazdák szerepkörben lévő felhasználók meglátogatják őket. A szerepkörök használatával ezeket az engedélyezési szabályokat szerepkör szerint definiálhatjuk, nem pedig felhasználónként.

Felhasználók hitelesítése egy ASP.NET-alkalmazásban

Amikor egy felhasználó URL-címet ad meg a böngésző címablakába, vagy egy hivatkozásra kattint, a böngésző http-kérést küld a webkiszolgálónak a megadott tartalomra vonatkozóan, legyen szó ASP.NET lapról, képről, JavaScript-fájlról vagy bármilyen más tartalomtípusról. A webkiszolgáló feladata a kért tartalom visszaadása. Ennek során számos dolgot meg kell határoznia a kéréssel kapcsolatban, beleértve azt is, hogy ki hajtotta végre a kérelmet, és hogy az identitás jogosult-e a kért tartalom lekérésére.

Alapértelmezés szerint a böngészők olyan HTTP-kéréseket küldenek, amelyek nem tartalmaznak azonosítási adatokat. Ha azonban a böngésző tartalmazza a hitelesítési adatokat, akkor a webkiszolgáló elindítja a hitelesítési munkafolyamatot, amely megkísérli azonosítani a kérést küldő ügyfelet. A hitelesítési munkafolyamat lépései a webalkalmazás által használt hitelesítés típusától függenek. ASP.NET háromféle hitelesítést támogat: Windows, Passport és űrlapok. Ez az oktatóanyag-sorozat az űrlaphitelesítésre összpontosít, de szánjunk egy percet a Windows-hitelesítés felhasználói tárolóinak és munkafolyamatainak összehasonlítására és kontrasztjára.

Hitelesítés Windows-hitelesítéssel

A Windows-hitelesítési munkafolyamat az alábbi hitelesítési technikák egyikét használja:

  • Alapszintű hitelesítés
  • Kivonatoló hitelesítés
  • Integrált Windows-hitelesítés

Mindhárom technika nagyjából ugyanúgy működik: ha jogosulatlan, névtelen kérés érkezik, a webkiszolgáló egy HTTP-választ küld vissza, amely azt jelzi, hogy a folytatáshoz engedélyezésre van szükség. A böngésző ezután egy modális párbeszédpanelt jelenít meg, amely a felhasználó felhasználónevét és jelszavát kéri (lásd az 1. ábrát). Ezt az információt ezután egy HTTP-fejlécen keresztül küldi vissza a webkiszolgálóra.

A Modal dialog box kéri a felhasználótól a hitelesítő adatait

1. ábra: A modális párbeszédpanel kéri a felhasználótól a hitelesítő adatait

A megadott hitelesítő adatok érvényesítése a webkiszolgáló Windows felhasználói áruházában történik. Ez azt jelenti, hogy a webalkalmazás minden hitelesített felhasználója rendelkezik Windows-fiókkal a szervezetében. Ez gyakori az intranetes forgatókönyvekben. Amikor a Windows integrált hitelesítést intranetes környezetben használja, a böngésző automatikusan megadja a webkiszolgálónak a hálózatra való bejelentkezéshez használt hitelesítő adatokat, így letiltja az 1. ábrán látható párbeszédpanelt. Bár a Windows-hitelesítés nagyszerű az intranetes alkalmazásokhoz, az internetes alkalmazások esetében általában nem valósítható meg, mivel nem szeretne Windows-fiókokat létrehozni minden felhasználó számára, aki regisztrál a webhelyén.

Hitelesítés űrlapalapú hitelesítéssel

Az űrlapalapú hitelesítés viszont ideális internetes webalkalmazásokhoz. Ne feledje, hogy az űrlaphitelesítés úgy azonosítja a felhasználót, hogy egy webes űrlapon keresztül kéri meg a hitelesítő adataik megadását. Ezért amikor egy felhasználó jogosulatlan erőforráshoz próbál hozzáférni, a rendszer automatikusan átirányítja őket a bejelentkezési oldalra, ahol megadhatja a hitelesítő adatait. A beküldött hitelesítő adatok ezután egy egyéni felhasználói tárolón – általában egy adatbázison – lesznek érvényesítve.

Az elküldött hitelesítő adatok ellenőrzése után létrejön egy űrlaphitelesítési jegy a felhasználó számára. Ez a jegy azt jelzi, hogy a felhasználó hitelesítése megtörtént, és tartalmazza az azonosító adatokat, például a felhasználónevet. Az űrlaphitelesítési jegy (általában) cookie-ként van tárolva az ügyfélszámítógépen. Ezért a webhely későbbi látogatásai tartalmazzák az űrlapok hitelesítési jegyét a HTTP-kérelemben, ezáltal lehetővé téve a webalkalmazás számára, hogy a bejelentkezés után azonosítsa a felhasználót.

A 2. ábra az űrlaphitelesítési munkafolyamatot szemlélteti egy magas szintű nézőpontból. Figyelje meg, hogy a ASP.NET hitelesítési és engedélyezési részei két különálló entitásként működnek. Az űrlap-hitelesítési rendszer azonosítja a felhasználót (vagy jelzi, hogy névtelen). Az engedélyezési rendszer határozza meg, hogy a felhasználó hozzáfér-e a kért erőforráshoz. Ha a felhasználó jogosulatlan (ahogy a 2. ábrán látható, amikor névtelenül próbál meg ProtectedPage.aspx látogatni), az engedélyezési rendszer azt jelenti, hogy a felhasználó megtagadva, ami azt eredményezi, hogy az űrlap-hitelesítési rendszer automatikusan átirányítja a felhasználót a bejelentkezési oldalra.

Miután a felhasználó sikeresen bejelentkezett, a későbbi HTTP-kérések tartalmazzák az űrlaphitelesítési jegyet. Az űrlaphitelesítő rendszer csupán azonosítja a felhasználót – az engedélyezési rendszer határozza meg, hogy a felhasználó hozzáfér-e a kért erőforráshoz.

Az Űrlapok hitelesítési munkafolyamata

2. ábra: Az űrlap-hitelesítési munkafolyamat

A következő oktatóanyag, az Űrlaphitelesítés áttekintése című oktatóanyagban részletesebben is megismerjük az űrlaphitelesítést. További információért az ASP.NET hitelesítési lehetőségeiről lásd ASP.NET hitelesítés.

A weblapokhoz, könyvtárakhoz és lapfunkciókhoz való hozzáférés korlátozása

ASP.NET kétféleképpen állapíthatja meg, hogy egy adott felhasználó rendelkezik-e jogosultságokkal egy adott fájlhoz vagy könyvtárhoz való hozzáféréshez:

  • Fájlengedélyezés – mivel ASP.NET lapok és webszolgáltatások a webkiszolgáló fájlrendszerén található fájlokként vannak implementálva, ezekhez a fájlokhoz való hozzáférés a hozzáférés-vezérlési listákon (ACL-eken) keresztül adható meg. A fájlhitelesítést leggyakrabban a Windows-hitelesítéssel használják, mivel az ACL-ek a Windows-fiókokra vonatkozó engedélyek. Űrlaphitelesítés használatakor az összes operációs rendszer- és fájlrendszerszintű kérést ugyanaz a Windows-fiók hajtja végre, függetlenül attól, hogy a felhasználó meglátogatja-e a webhelyet.
  • URL-engedélyezés – AZ URL-hitelesítéssel a lap fejlesztője engedélyezési szabályokat határoz meg a Web.config. Ezek az engedélyezési szabályok határozzák meg, hogy mely felhasználók vagy szerepkörök férhetnek hozzá, vagy hogy az alkalmazás bizonyos lapjaihoz vagy könyvtáraihoz nem férnek hozzá.

A fájlengedélyezés és az URL-engedélyezés egy adott ASP.NET lap vagy egy adott könyvtár összes ASP.NET lapjának elérésére vonatkozó engedélyezési szabályokat határozza meg. Ezekkel a technikákkal utasíthatjuk ASP.NET, hogy tiltsa le egy adott felhasználó egy adott lapjára irányuló kérelmeket, vagy engedélyezze a felhasználók egy csoportjához való hozzáférést, és tiltsa le a hozzáférést mindenki máshoz. Mi a helyzet azokkal a forgatókönyvekkel, amelyekben az összes felhasználó hozzáférhet az oldalhoz, de a lap működése a felhasználótól függ? A felhasználói fiókokat támogató webhelyeken például különböző tartalmakat vagy adatokat megjelenítő lapok jelennek meg a hitelesített felhasználók és a névtelen felhasználók számára. Előfordulhat, hogy egy névtelen felhasználó egy, a webhelyre való bejelentkezésre mutató hivatkozást lát, míg a hitelesített felhasználó ehelyett egy olyan üzenetet látna, mint például: Welcome back, Username with a link to log out. Egy másik példa: ha egy elemet egy aukciós webhelyen tekint meg, különböző információkat jelenít meg attól függően, hogy Ön egy licitáló vagy egy árverésen lévő elem.

Az ilyen oldalszintű kiigazítások deklaratívan vagy programozott módon is elvégezhetők. Ha más tartalmat szeretne megjeleníteni a névtelen felhasználók számára, mint a hitelesített felhasználók, egyszerűen húzzon egy LoginView-vezérlőt a lapra, és írja be a megfelelő tartalmat az AnonymousTemplate és a LoggedInTemplate sablonjaiba. Azt is megadhatja, hogy az aktuális kérés hitelesítve van-e, ki a felhasználó, és milyen szerepkörökhöz tartoznak (ha vannak ilyenek). Az információk felhasználásával megjelenítheti vagy elrejtheti az oszlopokat egy táblázatban vagy a Paneleken az oldalon.

Ez a sorozat három oktatóanyagot tartalmaz, amelyek az engedélyezésre összpontosítanak. User-Based Engedélyezésazt vizsgálja, hogyan korlátozhatja egy adott felhasználói fiók lapjainak vagy lapjainak hozzáférését a címtárban; Role-Based Engedélyezés szerepkörszinten vizsgálja az engedélyezési szabályok megadását; Végül pedig az aktuálisan bejelentkezett felhasználói oktatóanyagon alapuló tartalommegjelenítés egy adott oldal tartalmának és funkcióinak módosítását mutatja be az oldalt meglátogató felhasználó alapján. További információ az ASP.NET engedélyezési lehetőségeiről, lásd az ASP.NET Engedélyezés című témakört.

Felhasználói fiókok és szerepkörök

Az ASP.NET űrlaphitelesítése infrastruktúrát biztosít a felhasználók számára, hogy bejelentkezzenek egy webhelyre, és megőrizzék hitelesített állapotukat az oldallátogatások során. Az URL-engedélyezés pedig egy keretrendszert biztosít a ASP.NET-alkalmazások adott fájljaihoz vagy mappáihoz való hozzáférés korlátozásához. Egyik funkció sem biztosít azonban eszközt a felhasználói fiókok adatainak tárolására vagy a szerepkörök kezelésére.

A 2.0 ASP.NET előtt a fejlesztők saját felhasználói és szerepkör-tárolókat hoztak létre. A felhasználói felületek tervezéséért és az alapvető felhasználói fiókkal kapcsolatos fontos oldalak, mint például a bejelentkezési oldal és az új fiók létrehozására szolgáló oldal kódjának megírásáért is felelősek voltak. Az ASP.NET beépített felhasználóifiók-keretrendszere nélkül minden felhasználói fiókot megvalósító fejlesztőnek saját tervezési döntéseket kellett hoznia a következő kérdésekkel kapcsolatban: Hogyan tárolhatom a jelszavakat vagy más bizalmas információkat? és milyen irányelveket kell előírnom a jelszó hosszával és erősségével kapcsolatban?

A felhasználói fiókok ASP.NET alkalmazásokban való implementálása ma sokkal egyszerűbb a tagsági keretrendszernek és a beépített bejelentkezési webvezérlőknek köszönhetően. A tagsági keretrendszer a System.Web.Security névtér néhány osztálya, amelyek alapvető felhasználói fiókokkal kapcsolatos feladatok elvégzéséhez nyújtanak funkciókat. A tagsági keretrendszer kulcsosztálya a Tagság osztály, amely a következő módszereket tartalmazza:

  • Felhasználó létrehozása
  • Felhasználó törlése
  • GetAllUsers
  • FelhasználóLekérése
  • Felhasználófrissítés
  • Felhasználó érvényesítése

A tagsági keretrendszer a szolgáltatói modellt használja, amely egyértelműen elválasztja a tagsági keretrendszer API-ját annak implementálásától. Ez lehetővé teszi a fejlesztők számára, hogy közös API-t használjanak, de lehetővé teszik számukra, hogy olyan implementációt használjanak, amely megfelel az alkalmazás egyéni igényeinek. Röviden: a tagsági osztály meghatározza a keretrendszer alapvető funkcióit (a metódusokat, tulajdonságokat és eseményeket), de valójában nem ad meg implementálási részleteket. Ehelyett a Tagság osztály metódusai meghívják a konfigurált szolgáltatót, amely elvégzi a tényleges munkát. Ha például a tagsági osztály CreateUser metódusa meghívásra kerül, a tagsági osztály nem ismeri a felhasználói tár részleteit. Nem tudja, hogy a felhasználókat egy adatbázisban, EGY XML-fájlban vagy más tárolóban tartják-e fenn. A tagsági osztály megvizsgálja a webalkalmazás konfigurációját annak meghatározásához, hogy melyik szolgáltatónak delegálja a hívást, és az adott szolgáltatói osztály feladata az új felhasználói fiók létrehozása a megfelelő felhasználói tárban. Ezt az interakciót a 3. ábra szemlélteti.

A Microsoft két tagságszolgáltatói osztályt szállít a .NET-keretrendszerben:

Ez az oktatóanyag-sorozat kizárólag az SqlMembershipProviderre összpontosít.

A szolgáltatói modell lehetővé teszi a különböző implementációk zökkenőmentes csatlakoztatását a keretrendszerhez

03. ábra: A szolgáltatói modell lehetővé teszi a különböző implementációk zökkenőmentes csatlakoztatását a keretrendszerbe (kattintson ide a teljes méretű kép megtekintéséhez)

A szolgáltatói modell előnye, hogy alternatív implementációkat a Microsoft, külső gyártók vagy egyéni fejlesztők fejleszthetnek, és zökkenőmentesen csatlakoztathatók a tagsági keretrendszerhez. A Microsoft például kiadott egy tagságszolgáltatót a Microsoft Access-adatbázisokhoz. A tagságszolgáltatókkal kapcsolatos további információkért tekintse meg a Szolgáltatói eszközkészletet, amely tartalmazza a tagságszolgáltatók bemutatóját, egyéni mintaszolgáltatókat, több mint 100 oldalnyi dokumentációt a szolgáltatói modellről, valamint a beépített tagságszolgáltatók teljes forráskódját (nevezetesen Az ActiveDirectoryMembershipProvider és az SqlMembershipProvider).

ASP.NET 2.0 a Szerepkörök keretrendszert is bevezette. A tagsági keretrendszerhez hasonlóan a Szerepkörök keretrendszer is a szolgáltatói modellen alapul. Az API a Szerepkörök osztályon keresztül érhető el, a .NET-keretrendszer pedig három szolgáltatói osztálysal rendelkezik:

  • AuthorizationStoreRoleProvider – egy engedélyezési-kezelői szabályzattárban, például az Active Directoryban vagy az ADAM-ben kezeli a szerepköradatokat.
  • SqlRoleProvider – szerepköröket implementál egy SQL Server-adatbázisban.
  • WindowsTokenRoleProvider – a szerepkör-információkat a látogató Windows-csoportja alapján társítja. Ezt a módszert általában Windows-hitelesítéssel használják.

Ez az oktatóanyag-sorozat kizárólag az SqlRoleProviderre összpontosít.

Mivel a szolgáltatói modell egyetlen előre irányuló API-t (a tagsági és szerepkörosztályokat) tartalmaz, az API-ra anélkül építhető ki funkció, hogy a megvalósítás részleteivel kellene foglalkoznia – ezeket a lap fejlesztője által kiválasztott szolgáltatók kezelik. Ez az egységes API lehetővé teszi, hogy a Microsoft és a külső gyártók olyan webvezérlőket építsenek ki, amelyek a tagsági és szerepkör-keretrendszerekkel kommunikálnak. ASP.NET számos bejelentkezési webes vezérlővel rendelkezik a felhasználói fiókok gyakori felhasználói felületeinek implementálására. A Bejelentkezési vezérlő például kéri a felhasználótól a hitelesítő adatait, érvényesíti őket, majd űrlaphitelesítéssel naplózza őket. A LoginView vezérlő sablonokat kínál a névtelen felhasználók és a hitelesített felhasználók számára különböző korrektúrák megjelenítéséhez, illetve a felhasználó szerepköre alapján eltérő korrektúra megjelenítéséhez. A CreateUserWizard vezérlő pedig lépésenkénti felhasználói felületet biztosít egy új felhasználói fiók létrehozásához.

A fedelek alatt a különböző bejelentkezési vezérlők a tagsági és szerepkör-keretrendszerekkel működnek együtt. A legtöbb bejelentkezési vezérlő anélkül implementálható, hogy egyetlen kódsort kellene írnia. Ezeket a vezérlőket részletesebben fogjuk megvizsgálni a jövőbeli oktatóanyagokban, beleértve a funkciók kiterjesztésére és testreszabására szolgáló technikákat is.

Összefoglalás

A felhasználói fiókokat támogató összes webalkalmazáshoz hasonló funkciók szükségesek, például: a felhasználók bejelentkezhet, és a bejelentkezési állapotuk megjegyezve lesz az oldallátogatások során; egy weblap, amellyel új látogatók hozhatnak létre fiókot; és annak lehetősége, hogy a lap fejlesztője megadhatja, hogy milyen erőforrások, adatok és funkciók érhetők el a felhasználók vagy szerepkörök számára. A felhasználók hitelesítésével és engedélyezésével, valamint a felhasználói fiókok és szerepkörök kezelésével kapcsolatos feladatok rendkívül könnyen elvégezhetők ASP.NET alkalmazásokban az űrlaphitelesítésnek, az URL-engedélyezésnek, valamint a tagsági és szerepkör-keretrendszereknek köszönhetően.

A következő néhány oktatóanyag során ezeket a szempontokat úgy vizsgáljuk meg, hogy egy működő webalkalmazást készítünk az alapoktól kezdve lépésről lépésre. A következő két oktatóanyagban részletesen feltárjuk az űrlap-hitelesítést. Működés közben látni fogjuk az űrlap-hitelesítési munkafolyamatot, eloszlatjuk az űrlaphitelesítési jegyet, megvitatjuk a biztonsági problémákat, és megtudhatjuk, hogyan konfigurálható az űrlaphitelesítő rendszer – mindezt egy olyan webalkalmazás létrehozásakor, amely lehetővé teszi a látogatók számára a bejelentkezést és a kijelentkezéseket.

Boldog programozást!

További olvasás

Az oktatóanyagban tárgyalt témakörökről az alábbi forrásokban talál további információt:

Tudnivalók a szerzőről

Scott Mitchell, hét ASP/ASP.NET-könyv szerzője és a 4GuysFromRolla.com alapítója, 1998 óta dolgozik a Microsoft webtechnológiáival. Scott független tanácsadóként, edzőként és íróként dolgozik. Legújabb könyve "Sams Teach Yourself ASP.NET 2.0 in 24 Hours". Ő itt elérhető mitchell@4GuysFromRolla.com.

Külön köszönet

Ezt az oktatóanyag-sorozatot sok hasznos véleményező áttekintette. Az oktatóanyag vezető véleményezője volt, ezt az oktatóanyag-sorozatot pedig sok hasznos véleményező áttekintette. Az oktatóanyag vezető véleményezői közé tartozik Alicja Maziarz, John Suru és Teresa Murphy. Szeretné áttekinteni a közelgő MSDN-cikkeimet? Ha igen, írj egy sort a mitchell@4GuysFromRolla.com-ra.