IIS utvikler støtte stemme-kolonne
Kerberos-godkjenning og feilsøking av problemer med delegering
Hvis du vil tilpasse denne kolonnen til dine behov, ønsker vi å invitere deg til å sende dine ideer om emner som interesserer du og problemer som du ønsker å se i fremtidige adressert Knowledge Base-artikler og støtte stemme-kolonner. Du kan sende inn ideer og tilbakemeldinger ved hjelp av skjemaet Ber For den . Det finnes også en kobling til skjemaet nederst i denne kolonnen.
Mitt navn er Martin Smith, og jeg er med Microsofts kritiske problemløsning for Microsoft Internet Information Services (IIS) gruppe. Jeg har vært i Microsoft ni år og har vært i IIS-teamet alle ni år. Jeg har kompilert informasjon fra flere steder i
http://msdn.Microsoft.com og
http://www.microsoft.com om Kerberos og hvordan du feilsøker problemer for delegering.
IIS 6.0
Følgende hvitboka beskriver hvordan du konfigurerer delegering i Microsoft Windows Server 2003. Hvitboken har spesifikk informasjon for Network Load Balancing (NLB), men inkluderer utmerket detaljer om hvordan du setter opp en delegert scenario uten NLB. Hvis du vil vise denne hvitboken, går du til følgende Microsoft-webområde:
http://technet.microsoft.com/en-us/library/cc757299.aspxObs! Bruk HTTP Service Principal navn (SPNer) spesielt når du bruker NLB.
En annen populær Kerberos problemet nylig er behovet for å tillate flere programpooler for å bruke samme DNS-navn. Dessverre, når du bruker Kerberos ikke delegere legitimasjon, du kan ikke binde de samme Service Principal Name (SPN) til et annet programutvalg. Du kan ikke gjøre dette på grunn av utformingen av Kerberos. Kerberos-protokollen krever flere delte hemmeligheter for protokollen skal fungere riktig. Ved hjelp av den samme SPN for annet programutvalg, eliminere ett av disse delte hemmeligheter. Katalogtjenesten Active Directory støtter ikke denne konfigurasjonen av Kerberos-protokollen på grunn av sikkerhetsproblemet.
Konfigurere SPNer på denne måten fører til at Kerberos-godkjenningen mislykkes. En mulig løsning for dette problemet vil være å bruke protokollen overgang. Første godkjenning mellom klienten og serveren kjører IIS vil behandles ved hjelp av NTLM-godkjenning-protokollen. Kerberos vil håndtere godkjenning mellom IIS og ressurs bakserveren.
Microsoft Internet Explorer 6 eller senere
Klientens Web-leser kan det oppstå problemer, for eksempel mottar gjentatte pålogging ber om legitimasjon eller "401 Ingen tilgang"-feilmeldinger fra serveren som kjører IIS. Vi har funnet følgende to problemer som kan hjelpe deg med å løse disse problemene:
-
Kontroller at det er merket av for Aktiver integrert Windows-godkjenning i Web-leserens egenskaper. For mer informasjon, klikker du følgende artikkelnummer for å vise artikkelen i Microsoft Knowledge Base:
299838 kan ikke forhandle Kerberos-godkjenning etter oppgradering til Internet Explorer 6
-
Hvis Utvidet sikkerhetskonfigurasjon for Internet Explorer er aktivert i Legg til/fjern programmer, må du legge til et område som bruker en delegasjon på
Listen over Klarerte områder . For mer informasjon, klikker du følgende artikkelnummer for å vise artikkelen i Microsoft Knowledge Base:815141 utvidet sikkerhetskonfigurasjon for Internet Explorer endrer brukeropplevelsen
IIS 5.0 og IIS 6.0
Når du oppgraderer fra IIS 4.0 til IIS 5.0 eller IIS 6.0, delegering, vil kanskje ikke fungere på riktig måte, eller muligens en person eller et program har endret metabaseegenskapen NTAuthenticationProviders.
Hvis du vil ha mer informasjon om hvordan du kan løse dette problemet, kan du klikke følgende artikkelnummer for å vise artikkelen i Microsoft Knowledge Base:
248350 mislykkes Kerberos-godkjenning etter oppgradering fra IIS 4.0 til IIS 5.0
Et bestemt område på problemer som kan oppstå når du angir SPN
Angi navnet på serveren
Avgjør om du kobler deg til Web-området ved hjelp av faktiske NetBIOS-navnet på serveren, eller ved hjelp av et aliasnavn, for eksempel et DNS-navn (for eksempel www.microsoft.com). Hvis du har tilgang til Web-serveren ved hjelp av et annet navn enn det faktiske navnet på serveren, må en ny Service Principal Name (SPN) er registrert ved hjelp av verktøyet Setspn fra Windows 2000 Server Resource Kit. Fordi Active Directory-katalogtjenesten ikke vet navnet på denne tjenesten, gir-ticket granting service (TGS) ikke deg en billett til å godkjenne brukeren. Dette tvinger klienten til å bruke neste tilgjengelige godkjenningsmetoden, som er NTLM, til å forhandle på nytt. Hvis Web-serveren svarer på en DNS-navnet til www.microsoft.com, men serveren heter webserver1.development.microsoft.com, må du registrere www.microsoft.com i Active Directory på serveren som kjører kjører IIS. Hvis du vil gjøre dette, må du laste ned verktøyet Setspn og installere den på serveren som kjører IIS.
Hvis du bruker Windows Server 2003 og IIS 6, er Setspn verktøyet for Microsoft Windows Server 2003 tilgjengelig fra følgende plassering:
http://support.microsoft.com/kb/970536Hvis du vil finne ut om du kobler til ved hjelp av det faktiske navnet, kan du prøve å koble til serveren ved hjelp av det faktiske navnet på serveren i stedet for DNS-navnet. Hvis du ikke kan koble til serveren, kan du se delen "Kontroller at datamaskinen er klarert for delegering".
Hvis du kan koble til serveren, følger du denne fremgangsmåten for å angi en SPN for DNS-navnet som du bruker til å koble til serveren:
-
Installere verktøyet Setspn.
-
På serveren som kjører IIS, åpner du en ledetekst, og deretter åpne mappen c:\Programfiler\Microsoft Files\Resource Kit.
-
Kjør følgende kommando for å legge til denne nye SPN (www.microsoft.com) i Active Directory for serveren:
Setspn - en HTTP/www.microsoft.com webserver1Obs! I denne kommandoen representerer webserver1 NetBIOS-navnet på serveren.
Du mottar et resultat som ligner på følgende:
Registering ServicePrincipalNames for CN=webserver1,OU=Domain Controllers,DC=microsoft,DC=comHTTP/www.microsoft.com
Updated object
Hvis du vil vise en liste over SPNer på serveren for å se denne nye verdi, skriver du inn følgende kommando på serveren som kjører IIS:
Setspn -L WebservernavnVær oppmerksom på at du ikke har til å registrere alle tjenester. Mange tjenestetyper, tilordnes som HTTP, W3SVC, WWW, RPC, CIFS (filtilgang), WINS, og avbruddsfri strømforsyning (UPS), en standard tjenestetype som heter vert. For eksempel hvis klientprogramvaren bruker en SPN for HTTP/webserver1.microsoft.com til å opprette en HTTP-tilkobling til webserveren på serveren webserver1.microsoft.com, men denne SPN er ikke registrert på server, tilordnes Windows 2000-domenekontroller automatisk tilkoblingen til HOST/webserver1.microsoft.com. Denne tilordningen brukes bare hvis Web-tjenesten kjører under den lokale systemkontoen.
Kontroller at datamaskinen er klarert for delegering
Hvis serveren kjører IIS er medlem av domenet, men ikke er en domenekontroller, må datamaskinen være klarert for delegering for Kerberos skal fungere riktig. Følg disse trinnene:
-
På domenekontrolleren, klikk Start, velg Innstillingerog deretter Kontrollpanel.
-
Åpne Administrative verktøyi Kontrollpanel.
-
Dobbeltklikk Active Directory-brukere og -datamaskiner.
-
Klikk datamaskinerunder domenet ditt.
-
Finn serveren som kjører IIS i listen, høyreklikker du navnet på serveren, og deretter Egenskaper.
-
Klikk kategorien Generelt , klikk for å velge den
Klarert for delegering , og klikk deretter
OK.
Vær oppmerksom på at hvis flere Web-områder er nådd i samme URL-adressen, men på forskjellige porter, delegering ikke vil fungere. Hvis du vil at dette skal fungere må du bruke ulike vertsnavn og annen SPNer. Når Internet Explorer ber om enten http://www. MyWebSite.com eller http://www. MyWebSite.com:81, Internet Explorer, ber om en billett for SPN HTTP/www.mywebsite.com. Internet Explorer ikke legge til porten eller vdir SPN-forespørselen. Denne virkemåten er den samme for http://www. MyWebSite.com/app1 eller http://www. MyWebSite.com/app2. I dette scenariet, vil Internet Explorer be om en billett for SPN http://www. MyWebSite.com fra Key Distribution Center (KDC). Hver SPN kan deklareres bare for én identitet. Derfor vil du også få en feilmelding i KRB_DUPLICATE_SPN Hvis du prøver å deklarere denne SPN for hver identitet.
Delegering og Microsoft ASP.NET
Hvis du vil ha mer informasjon om konfigurasjonen for å delegere legitimasjon når du bruker et ASP.NET-program, kan du klikke følgende artikkelnummer for å vise artikkelen i Microsoft Knowledge Base:
810572 hvordan du konfigurerer et ASP.NET-program for et scenario
Representasjon og delegering finnes to metoder for en server å godkjenne på vegne av klienten. Når du skal bestemme hvilken av disse metodene til å bruke og deres implementering kan føre til litt forvirring. Du må gå gjennom forskjellen mellom disse to metodene og undersøke hvilken av fremgangsmåtene du bør bruke for programmet. Min anbefaling vil være å lese det tekniske dokumentet for ytterligere detaljer:
Referanser
http://technet.microsoft.com/en-us/library/cc757299.aspx
http://msdn.microsoft.com/msdnmag/issues/05/09/SecurityBriefs/default.aspx
305971 Windows 2000 Server ber domenebruker for legitimasjon
262177 hvordan du aktiverer Kerberos hendelseslogging
326985 hvordan du feilsøker Kerberos-relaterte problemer i IIS
842861 TechNet Support WebCast: feilsøking i forbindelse med Kerberos-godkjenning med sikre Web-programmer og Microsoft SQL Server
Som alltid, sende inn ideer om emner du vil gjerne omtalt i fremtidige kolonner eller i Knowledge Base ved hjelp av
Be For det skjemaet.