Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
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. |
| Alapszintű | 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. |
| Összefoglaló | 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 nonce-t, valamint további információkat. 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 tartomány a Windows-domaind név. Ezért nem használhat kiszolgálót olyan operációs rendszeren, amely nem támogatja a Windows-tartományokat, ilyen például a Windows XP Home Edition, kivonatos 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árgyal | 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 azonosító | 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ó: Federáció és kiadott tokenek. |
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 a "Negotiate" hitelesítés, amely a Kerberos protokollt eredményezi.
A kiszolgálónak nem szabad például a WWW-Authentication fejléceiben olyan sémákat bemutatnia, amelyeket nem tud elfogadni, vagy amelyek nem biztosítják megfelelően a védett erőforrás biztonságát. 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.