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


A HTTP-hitelesítés ismertetése

A hitelesítés az ügyfél azonosításának folyamata, általában annak megállapítására, hogy az ügyfél jogosult-e hozzáférni egy erőforráshoz. A HTTP protokoll támogatja a hitelesítést a biztonságos erőforráshoz való hozzáférés egyeztetésének eszközeként.

Az ügyfél kezdeti kérése általában névtelen kérés, amely nem tartalmaz hitelesítési adatokat. A HTTP-kiszolgálóalkalmazások megtagadhatják a névtelen kérést, és jelezhetik, hogy hitelesítésre van szükség. A kiszolgálóalkalmazás www-authentication fejléceket küld a támogatott hitelesítési sémák jelzésére. Ez a cikk a HTTP számos hitelesítési sémáját ismerteti, és ismerteti a Windows Communication Foundation (WCF) által nyújtott támogatásukat.

HTTP-hitelesítési sémák

A kiszolgáló több hitelesítési sémát is megadhat az ügyfél számára, amelyek közül választhat. Az alábbi táblázat a Windows-alkalmazásokban gyakran használt hitelesítési sémákat ismerteti:

Hitelesítési séma Leírás
Névtelen A névtelen kérések nem tartalmaznak hitelesítési adatokat. A névtelen név egyenértékű azzal, hogy mindenki számára hozzáférést biztosít az erőforráshoz.
Alap Az alapszintű hitelesítés egy Base64 kódolású sztringet küld, amely az ügyfél felhasználónevet és jelszót tartalmaz. A Base64 nem a titkosítás egyik formája, és ugyanúgy kell tekinteni, mint a felhasználónév és a jelszó egyértelmű szövegben való elküldésével. Ha egy erőforrást védeni kell, fontolja meg az alapszintű hitelesítésen kívüli hitelesítési sémák használatát.
Digest A kivonatoló hitelesítés egy kihívás-válasz séma, amely az alapszintű hitelesítés lecserélésére szolgál. A kiszolgáló feladatként egy véletlenszerű, nonce nevű adatsztringet küld az ügyfélnek. Az ügyfél egy kivonattal válaszol, amely tartalmazza a felhasználónevet, a jelszót és a nem szavatos adatokat a további információk között. Az exchange összetettsége és az adatkivonatolás megnehezíti a felhasználó hitelesítő adatainak ellopását és újrafelhasználását ezzel a hitelesítési sémával.

A kivonatoló hitelesítéshez Windows-tartományi fiókokra van szükség. A kivonatoló tartomány a Windows-tartománynév. Ezért nem használhat olyan operációs rendszeren futó kiszolgálót, amely nem támogatja a Windows-tartományokat, például a Windows XP Home Editiont kivonatoló hitelesítéssel. Ezzel szemben, ha az ügyfél olyan operációs rendszeren fut, amely nem támogatja a Windows-tartományokat, a hitelesítés során explicit módon meg kell adni egy tartományi fiókot.
NTLM Az NT LAN Manager (NTLM) hitelesítés egy kihívás-válasz séma, amely a Kivonatoló hitelesítés biztonságosabb változata. Az NTLM Windows-hitelesítő adatokkal alakítja át a feladatadatokat a nem kódolt felhasználónév és jelszó helyett. Az NTLM-hitelesítéshez több cserére van szükség az ügyfél és a kiszolgáló között. A kiszolgálónak és a beavatkozó proxyknak támogatniuk kell az állandó kapcsolatokat a hitelesítés sikeres befejezéséhez.
Tárgyalni A hitelesítés egyeztetése automatikusan kiválasztódik a Kerberos-protokoll és az NTLM-hitelesítés között a rendelkezésre állástól függően. A Kerberos-protokollt akkor használja a rendszer, ha elérhető; ellenkező esetben a rendszer megpróbálja az NTLM-et. A Kerberos-hitelesítés jelentősen javítja az NTLM-et. A Kerberos-hitelesítés gyorsabb, mint az NTLM, és lehetővé teszi a kölcsönös hitelesítést és a hitelesítő adatok távoli gépekre történő delegálását.
Windows Live ID Az alapul szolgáló Windows HTTP szolgáltatás összevont protokollokat használó hitelesítést is tartalmaz. A WCF-ben a szabványos HTTP-átvitelek azonban nem támogatják az összevont hitelesítési sémák, például a Microsoft Windows Live ID használatát. A funkció támogatása jelenleg az üzenetbiztonság használatával érhető el. További információ: Összevonási és kibocsátott jogkivonatok.

Hitelesítési séma kiválasztása

A HTTP-kiszolgáló lehetséges hitelesítési sémáinak kiválasztásakor néhány megfontolandó elem az alábbiakat foglalja magában:

  • Fontolja meg, hogy az erőforrást védeni kell-e. A HTTP-hitelesítés használatához több adat továbbítására van szükség, és korlátozhatja az ügyfelekkel való együttműködést. Névtelen hozzáférés engedélyezése olyan erőforrásokhoz, amelyeket nem kell védeni.

  • Ha az erőforrást védeni kell, fontolja meg, hogy mely hitelesítési sémák biztosítják a szükséges biztonsági szintet. Az itt tárgyalt leggyengébb standard hitelesítési séma az alapszintű hitelesítés. Az alapszintű hitelesítés nem védi a felhasználó hitelesítő adatait. A legerősebb szabványos hitelesítési séma az Egyeztetés hitelesítés, amely a Kerberos protokollt eredményezi.

  • A kiszolgálónak nem szabad például a WWW-Authentication fejléceiben szerepelnie), az olyan sémáknak, amelyeket nem hajlandó elfogadni, vagy amelyek nem biztosítják megfelelően a védett erőforrást. Az ügyfelek szabadon választhatnak a kiszolgáló által megadott hitelesítési sémák közül. Egyes ügyfelek alapértelmezés szerint gyenge hitelesítési sémát vagy a kiszolgáló listában szereplő első hitelesítési sémát használják.

Lásd még