Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Ověřování je proces identifikace toho, kdo klient je, obvykle k určení, jestli má klient nárok na přístup k prostředku. Protokol HTTP podporuje ověřování jako způsob vyjednávání přístupu k zabezpečenému prostředku.
Počáteční požadavek od klienta je obvykle anonymní požadavek, který neobsahuje žádné ověřovací informace. Aplikace serveru HTTP můžou anonymní požadavek odepřít a zároveň indikovat, že se vyžaduje ověřování. Serverová aplikace odesílá hlavičky WWW-Authentication označující podporovaná schémata ověřování. Tento článek popisuje několik schémat ověřování pro PROTOKOL HTTP a popisuje jejich podporu ve Windows Communication Foundation (WCF).
Schémata ověřování HTTP
Server může zadat více schémat ověřování, ze které si klient může vybrat. Následující tabulka popisuje některá schémata ověřování, která se běžně vyskytují v aplikacích pro Windows:
| Schéma ověřování | Popis |
|---|---|
| Anonymní | Anonymní požadavek neobsahuje žádné ověřovací informace. Anonymní je ekvivalentem udělení přístupu každému k prostředku. |
| Základní | Základní ověřování odešle řetězec zakódovaný v Base64, který obsahuje uživatelské jméno a heslo pro klienta. Base64 není forma šifrování a měla by být považována za stejnou jako při odesílání uživatelského jména a hesla ve formátu prostého textu. Pokud je potřeba prostředek chránit, důrazně zvažte použití jiného schématu ověřování než základního ověřování. |
| Přehled | Ověřování pomocí Digest je schéma odpovědí na výzvu, které má nahradit Basic ověřování. Server odešle klientovi řetězec náhodných dat nazvaných nonce jako výzvu. Klient odpoví hodnotou hash, která obsahuje uživatelské jméno, heslo a nonce, mezi dalšími informacemi. Složitost, kterou přidává tato výměna, a hashování dat ztěžují krádež a opakované použití přihlašovacích údajů uživatele v rámci tohoto ověřovacího schématu. Ověřování Digest vyžaduje použití doménových účtů systému Windows. Sféra digest je název domény Systému Windows. Proto nemůžete použít server spuštěný v operačním systému, který nepodporuje domény Windows, jako je Windows XP Home Edition, s ověřováním pomocí Digest. Naopak když klient běží v operačním systému, který nepodporuje domény Windows, musí být během ověřování explicitně zadán účet domény. |
| NTLM | Autentizace pomocí NT LAN Manager (NTLM) je mechanismus výzvy a odezvy, který představuje bezpečnější variantu Digest ověřování. NTLM používá přihlašovací údaje systému Windows k transformaci dat výzvy místo nezakódovaného uživatelského jména a hesla. Ověřování NTLM vyžaduje více výměn mezi klientem a serverem. Server a všechny proxy servery musí podporovat trvalá připojení, aby se ověřování úspěšně dokončilo. |
| Vyjednávat | Automatické ověřování automaticky vybere mezi protokolem Kerberos a ověřováním NTLM v závislosti na jejich dostupnosti. Protokol Kerberos se používá, pokud je k dispozici; v opačném případě je pokus o použití NTLM. Ověřování protokolem Kerberos výrazně zlepšuje protokol NTLM. Ověřování protokolem Kerberos je rychlejší než PROTOKOL NTLM a umožňuje používat vzájemné ověřování a delegování přihlašovacích údajů na vzdálené počítače. |
| Windows Live ID | Základní služba WINDOWS HTTP zahrnuje ověřování pomocí federovaných protokolů. Standardní přenosy HTTP ve WCF však nepodporují použití federovaných schémat ověřování, jako je například Microsoft Windows Live ID. Podpora této funkce je aktuálně dostupná pomocí zabezpečení zpráv. Další informace najdete v tématu Federace a vystavené tokeny. |
Volba schématu ověřování
Při výběru potenciálních schémat ověřování pro server HTTP je potřeba zvážit několik položek:
Zvažte, jestli je potřeba prostředek chránit. Použití ověřování HTTP vyžaduje přenos více dat a může omezit interoperabilitu s klienty. Povolit anonymní přístup k prostředkům, které nemusí být chráněné.
Pokud je potřeba prostředek chránit, zvažte, která schémata ověřování poskytují požadovanou úroveň zabezpečení. Nejslabší standardní schéma ověřování probírané zde je základní ověřování. Základní ověřování nechrání přihlašovací údaje uživatele. Nejsilnějším standardním schématem ověřování je ověřování Negotiate, což vede k protokolu Kerberos.
Server by například v hlavičce WWW-Authentication neměl prezentovat žádné schéma, které není připravené přijmout nebo které dostatečně nezabezpečí chráněný prostředek. Klienti si mohou vybrat mezi libovolnými schématy ověřování, která server prezentuje. Někteří klienti ve výchozím nastavení používají slabé schéma ověřování nebo první schéma ověřování v seznamu serveru.