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


Űrlapok hitelesítése ASP.NET Webes API-ban

készítette: Mike Wasson

Az űrlaphitelesítés HTML-űrlap használatával küldi el a felhasználó hitelesítő adatait a kiszolgálónak. Ez nem internetes szabvány. Az űrlapok hitelesítése csak webalkalmazásból hívott webes API-khoz megfelelő, így a felhasználó használhatja a HTML-űrlapot.

Advantages Disadvantages
  • Könnyen implementálható: Beépített ASP.NET.
  • ASP.NET tagságszolgáltatót használ, amely megkönnyíti a felhasználói fiókok kezelését.
  • Nem szabványos HTTP-hitelesítési mechanizmus; a szabványos engedélyezési fejléc helyett HTTP-cookie-kat használ; egyes felhasználók letiltják a cookie-kat.
  • Nem böngésző alapú klienseknél nehéz használni. A bejelentkezéshez böngésző szükséges.
  • A rendszer egyszerű szövegként küldi el a felhasználói hitelesítő adatokat a kérésben.
  • Sebezhető a keresztoldalas kérelemhamisítás (CSRF) ellen; CSRF-ellenes intézkedéseket igényel.

Röviden az űrlaphitelesítés az ASP.NET a következőképpen működik:

  1. Az ügyfél hitelesítést igénylő erőforrást kér.
  2. Ha a felhasználó nincs hitelesítve, a kiszolgáló a HTTP 302 (Found) értéket adja vissza, és átirányítja egy bejelentkezési lapra.
  3. A felhasználó megadja a hitelesítő adatokat, és elküldi az űrlapot.
  4. A kiszolgáló egy másik HTTP 302-et ad vissza, amely visszairányítja az eredeti URI-ra. Ez a válasz tartalmaz egy hitelesítési cookie-t.
  5. Az ügyfél ismét kéri az erőforrást. A kérés tartalmazza a hitelesítési cookie-t, így a kiszolgáló megadja a kérést.

Az ábra bemutatja, hogy az ASP.NET űrlaphitelesítés hogyan működik

További információ: Az űrlaphitelesítés áttekintése.

Űrlaphitelesítés használata Webes API-val

Űrlaphitelesítést használó alkalmazás létrehozásához válassza az "Internet Application" sablont az MVC 4 projektvarázslóban. Ez a sablon MVC-vezérlőket hoz létre a fiókkezeléshez. Használhatja az "Egyoldalas alkalmazás" sablont is, amely a ASP.NET 2012. őszi frissítésben érhető el.

A webes API-vezérlőkben a hozzáférést a [Authorize] használatával korlátozhatja, ahogyan a A [Hitelesítés] attribútum használata című részben le van írva.

Az űrlap-hitelesítés munkamenet-cookie-t használ a kérések hitelesítéséhez. A böngészők automatikusan elküldik az összes releváns cookie-t a célwebhelyre. Ez a funkció potenciálisan sebezhetővé teszi az űrlaphitelesítést a helyek közötti hamisítási (CSRF) támadások ellen, lásd: Helyek közötti kérelemhamisítási (CSRF-) támadások megakadályozása.

Az űrlaphitelesítés nem titkosítja a felhasználó hitelesítő adatait. Ezért az űrlaphitelesítés nem biztonságos, kivéve, ha SSL-t használ. Lásd: Az SSL használata a Webes API-ban.