Det integrerede Windows-godkendelsesmodul IIS implementerer to større godkendelsesprotokoller: NTLM og Kerberos-godkendelsesprotokollen. Det opfordrer til tre forskellige sikkerhedstjenesteudbydere (SSP'er): Kerberos, NTLM og Forhandle. Disse SSP'er og godkendelsesprotokoller er normalt tilgængelige og bruges på Windows-netværk. NTLM implementerer NTLM-godkendelse og Kerberos implementerer Kerberos v5-godkendelse. Forhandling er forskellige, fordi det ikke understøtter nogen godkendelsesprotokoller. Da integreret Windows-godkendelse indeholder flere godkendelsesprotokoller, skal den have en forhandlingsfase, før den egentlige godkendelse mellem webbrowser og server kan finde sted. I denne forhandlingsfase bestemmer forhandlings-SSP, hvilken godkendelsesprotokol, der skal bruges mellem webbrowser og server.
Begge protokoller er ekstremt sikre, og de er i stand til at autentificere klienter uden at overføre adgangskoder over netværket i nogen form, men de er begrænsede. NTLM-godkendelsen fungerer ikke på tværs af HTTP-proxier, fordi den kræver en punkt-til-punkt-forbindelse mellem webbrowser og server for at fungere korrekt. Kerberos-godkendelse er kun tilgængelig på IE 5.0-browsere og IIS 5.0-webservere eller nyere. Det fungerer kun på maskiner, der kører Windows 2000 eller nyere, og kræver, at nogle ekstra porte skal være åbne på firewalls. NTLM er ikke så sikker som Kerberos, så det anbefales altid at bruge Kerberos så meget som muligt. Lad os se godt på de to.
NT LAN Manager er en udfordringssvar-baseret godkendelsesprotokol, der bruges af Windows-computere, der ikke er medlemmer af et Active Directory-domæne. Klienten indleder godkendelsen gennem en udfordring / responsmekanisme, der er baseret på en trevejs håndtryk mellem klienten og serveren. Klienten starter kommunikationen ved at sende en besked til serveren, der angiver dens krypteringsfunktioner og indeholder brugerens kontonavn. Serveren genererer en 64-bit tilfældig værdi kaldet nonce og svarer på klientens anmodning ved at returnere denne nonce, der indeholder oplysninger om dens egne muligheder. Dette svar kaldes udfordringen. Klienten bruger derefter udfordringsstrengen og dens adgangskode til at beregne et svar, som det sender til serveren. Serveren validerer derefter det svar, den modtog fra klienten, og sammenligner det med NTLM-svaret. Hvis de to værdier er identiske, er godkendelsen vellykket.
Kerberos er en billetbaseret godkendelsesprotokol, der bruges af Windows-computere, der er medlemmer af et Active Directory-domæne. Kerberos-godkendelse er den bedste metode til interne IIS-installationer. Kerberos v5-godkendelse blev designet på MIT og defineret i RFC 1510. Windows 2000 og senere implementerer Kerberos, når Active Directory er implementeret. Den bedste del, det reducerer antallet af adgangskoder, som hver bruger skal huske for at bruge et helt netværk til et - Kerberos-adgangskoden. Derudover inkorporerer det kryptering og beskedintegritet for at sikre, at følsomme autentificeringsdata aldrig sendes over netværket helt klart. Kerberos-systemet fungerer gennem et sæt centraliserede Key Distribution Centers eller KDC'er. Hver KDC indeholder en database med brugernavne og adgangskoder til både brugere og Kerberos-aktiverede tjenester.
- NTLM er en udfordringssvar-baseret godkendelsesprotokol, der bruges af Windows-computere, der ikke er medlemmer af et Active Directory-domæne. Klienten indleder godkendelsen gennem en udfordring / responsmekanisme, der er baseret på en trevejs håndtryk mellem klienten og serveren. Kerberos er på den anden side en billetbaseret godkendelsesprotokol, der kun fungerer på maskiner, der kører Windows 2000 eller nyere og kører i et Active Directory-domæne. Begge godkendelsesprotokoller er baseret på symmetrisk nøglekryptografi.
- En af de største forskelle mellem de to godkendelsesprotokoller er, at Kerberos understøtter både efterligning og delegering, mens NTLM kun understøtter efterligning. Delegation er dybest set det samme begreb som efterligning, som kun involverer handlinger på vegne af klientens identitet. Imidlertid fungerer efterligning bare inden for omfanget på en maskine, mens delegation også fungerer på tværs af netværket. Dette betyder, at godkendelsesbillet af den originale klients identitet kan overføres til en anden server i netværket, hvis den oprindeligt adgangsserver har tilladelse til at gøre det.
- Mens begge godkendelsesprotokoller er sikre, er NTLM ikke så sikker som Kerberos, fordi det kræver en punkt-til-punkt-forbindelse mellem webbrowser og server for at fungere korrekt. Kerberos er mere sikker, fordi det aldrig transmitterer adgangskoder over netværket i det fjerne. Det er unikt i brugen af billetter, der beviser en brugers identitet til en given server uden at sende adgangskoder over netværket eller cache-adgangskoder på den lokale brugers harddisk. Kerberos-godkendelse er den bedste metode til interne IIS-installationer (websteder, der kun bruges af domæneklienter).
- En af de største fordele ved Kerberos i forhold til NTLM er, at Kerberos tilbyder gensidig autentificering og rettet mod en klientservermodel, hvilket betyder, at klientens og serverens autenticitet begge er verificeret. Imidlertid skal både tjenesten og klienten køre på Windows 2000 eller nyere, ellers godkendes ikke. I modsætning til NTLM, der kun involverer IIS7-serveren og klienten, involverer Kerberos-godkendelse også en Active Directory-domænekontroller.
Mens begge protokoller er i stand til at autentificere klienter uden at overføre adgangskoder over netværket i nogen form, autentificerer NTLM klienter skønt en udfordrings- / responsmekanisme, der er baseret på en trevejs håndtryk mellem klienten og serveren. Kerberos er på den anden side en billetbaseret autentificeringsprotokol, der er mere sikker end NTLM og understøtter gensidig godkendelse, hvilket betyder, at klientens og serverens autenticitet begge er verificeret. Derudover understøtter Kerberos både efterligning og delegering, mens NTLM kun understøtter efterligning. NTLM er ikke så sikker som Kerberos, så det anbefales altid at bruge Kerberos så meget som muligt.