IIS ponúka mnoho rôznych autentifikačných technológií. Jednou z nich je integrácia autentifikácie Windows. Integrovaná autentifikácia Windows využíva vyjednávacie Kerberos alebo NTLM na autentifikáciu používateľov na základe šifrovaných tiketových správ medzi prehliadačom a serverom.
Najbežnejším aplikovaným scenárom NTLM autentifikácie je pravdepodobne autentifikácia používaná v prehliadačoch (http protokol). V skutočnosti však NTLM špecifikuje iba proces autentifikácie a formát autentifikačnej správy. Netýka sa to konkrétnych dohôd. Takže neexistuje nevyhnutne spojenie s http. Prehliadač prenáša iba NTLM správu v hlavičke http protokolu a prechádza autentifikáciou. Vieme, že http je zvyčajne v čistom texte, takže ak je priamy prenos hesiel veľmi nebezpečný, NTLM účinne zabraňuje tomuto problému.
Proces certifikácie
NTLM autentifikácia vyžaduje tri kroky na dokončenie a podrobný proces požiadaviek si môžete pozrieť cez Fiddler Toolbox.
Krok 1
Používateľ sa prihlási do klientského hostiteľa zadaním čísla účtu Windows a hesla. Pred prihlásením klient uloží hash zadaného hesla do vyrovnávacej pamäte a pôvodné heslo sa zahodí ("pôvodné heslo nie je možné za žiadnych okolností uložiť do vyrovnávacej pamäte", toto je základné bezpečnostné pravidlo). Používateľ, ktorý sa úspešne prihlási do klienta Windows, musí poslať požiadavku druhej strane, ak sa pokúsi pristupovať k serverovým zdrojom. Žiadosť obsahuje používateľské meno v čistom texte.
Krok 2
Keď server prijme požiadavku, vygeneruje 16-bitové náhodné číslo. Toto náhodné číslo sa nazýva výzva alebo nonce. Výzva sa uloží predtým, než ju server odošle klientovi. Výzvy sú zasielané v čistom texte.
Krok 3
Po prijatí výzvy, ktorú server pošle späť, klient ju zašifruje s hashom hesla uloženým v kroku 1 a potom pošle zašifrovanú výzvu serveru.
Krok 4
Po prijatí šifrovanej výzvy, ktorú klient pošle späť, server odošle klientovi požiadavku na autentifikáciu do DC (domény). Požiadavka obsahuje hlavne nasledujúce tri obsahy: používateľské meno klienta; Výzva a pôvodná výzva s šifrovaným hashom klientského hesla.
Kroky 5 a 6
DC zašifruje pôvodnú výzvu získaním hashu hesla účtu na základe používateľského mena. Ak je šifrovaná výzva rovnaká ako tá, ktorú posiela server, znamená to, že používateľ má správne heslo a overenie prejde, inak overenie zlyhá. DC posiela výsledky overenia serveru a nakoniec ich posiela klientovi.
Referenčné články:
Prihlásenie na hypertextový odkaz je viditeľné.
Prihlásenie na hypertextový odkaz je viditeľné.
Prihlásenie na hypertextový odkaz je viditeľné.
|