Problemer med Kerberos-godkjenning når en bruker tilhører mange grupper

Artikkeloversettelser Artikkeloversettelser
Artikkel-ID: 327825 - Vis produkter som denne artikkelen gjelder for.
Støtte for Windows Vista Service Pack 1 (SP1) endene på 12 juli 2011. Hvis du vil fortsette å motta sikkerhetsoppdateringer for Windows, pass på at du kjører Windows Vista med Service Pack 2 (SP2). Hvis du vil ha mer informasjon, kan du se dette Microsoft-webside: Støtte avsluttes for enkelte versjoner av Windows.
Vis alt | Skjul alt

På denne siden

Symptom

Når en bruker tilhører mange grupper, kan brukeren få problemer med godkjenning eller innstillingene for gruppepolicy. Følgende Microsoft Knowledge Base-artikler beskriver disse symptomene i mer detalj:

269643 Internet Explorer Kerberos-godkjenning fungerer ikke på grunn av en utilstrekkelig buffer kobler til IIS
280380 Buffer overflow utnytte mulig med utvidede lagrede prosedyrer
2020943 Feil "HTTP 400 - Ugyldig forespørsel (be om hodet for langt)" i Internet Information Services (IIS)
Løsningen som er beskrevet i disse artiklene ber deg om å endre registerverdien MaxTokenSize. Forbedring av et anleggsmiddel ble gjort i denne oppløsningen. Hvis du bruker hurtigreparasjonen som er beskrevet i denne artikkelen, kan du ikke har til å redigere standardverdien for MaxTokenSize.

Hurtigreparasjonen som er beskrevet i denne artikkelen erstatter hurtigreparasjonene som er beskrevet i Microsoft Knowledge Base-artiklene som er oppført i denne delen.

Årsak

Brukeren kan ikke godkjennes fordi det har en fast maksimumsstørrelse for Kerberos-tokenet som genereres under forsøk på godkjenning. Transporter for eksempel eksternt prosedyrekall (RPC) og HTTP avhengig av verdien for MaxTokenSize når de tildeler buffere for godkjenning. I Windows 2000 (den opprinnelige versjonen) er MaxTokenSize-verdien 8 000 byte. MaxTokenSize-verdien er 12 000 byte i Windows 2000 Service Pack 2 (SP2) og Windows Server 2003.

Kerberos bruker feltet tilgangsnivå attributtet sertifikat (PAC) for Kerberos-pakken til transport medlemskap i Active Directory-gruppe. Fra og med Windows Server 2012, gjelder dette også Active Directory-krav information (Dynamic Access Control)-feltet. Hvis det er mange gruppemedlemskap for brukeren, og hvis det er mange krav til brukeren eller enheten som er i bruk, vil disse feltene kan oppta mye plass i pakken.

Hvis en bruker er medlem av mer enn 120 grupper, er som bestemmes av verdien MaxTokenSize bufferen ikke stor nok. Derfor kan ikke godkjenne brukere, og de kan få feilmeldingen "ikke nok minne". Før du installerer hurtigreparasjonen som er beskrevet i denne artikkelen, øker denne bufferen ved 40 byte i hver gruppe som er lagt til en brukerkonto.

Merk I mange tilfeller vil Windows NTLM-godkjenning fungerer som forventet. Du kan ikke se problemet for Kerberos-godkjenning uten analyse. Innstillinger for gruppepolicy brukes i scenariene virker ikke som forventet.

Løsning

Viktig Hvis du vil løse dette problemet, må du angi registerverdien MaxTokenSize for alle datamaskinene som er involvert i prosessen for Kerberos-godkjenning. Dette inkluderer SQL Server-klienter.(Det vil si registernøkkelen har skal angis på hver datamaskin som er involvert i forespørsel/svar-flyt. Derfor, hvis det er en SQL Server-klient som bruker en web-applikasjon, eller hvis brukerens token må sendes til en SQL Server-database for bakserveren, har registernøkkelen som skal angis på klientdatamaskinen for SQL Server-datamaskinen for SQL Server-databasen, og også klientdatamaskin som kjører Internet Explorer-webserveren som kjører IISog så videre.)

Merk Følgende Windows-versjoner med en feilretting for dette problemet:
  • Windows 8
  • Windows Server 2012
  • Windows 7
  • Windows Server 2008 R2
  • Windows Server 2003
  • Windows Vista
  • Windows Server 2008
  • Windows XP Professional

Informasjon om oppdateringspakke

Hvis du vil løse dette problemet ved å skaffe den siste oppdateringspakken for Microsoft Windows 2000. Hvis du vil ha mer informasjon, kan du klikke følgende artikkelnummer for å vise artikkelen i Microsoft Knowledge Base:
260910 Hvordan du får tak i den nyeste oppdateringspakken for Windows 2000

Informasjon om hurtigreparasjon

En støttet hurtigreparasjon er nå tilgjengelig fra Microsoft. Det er imidlertid ment å løse problemet som er beskrevet i denne artikkelen. Bruk den bare på systemer som har dette bestemte problemet. Denne hurtigreparasjonen kan gjennomgå ytterligere testing. Hvis du ikke er alvorlig påvirket av dette problemet, anbefaler vi derfor at du venter på neste oppdateringspakke for Windows 2000 som inneholder denne hurtigreparasjonen.

Hvis du vil løse dette problemet umiddelbart, kontakter du Microsoft Kundestøtte for å få hurtigreparasjonen. For en fullstendig liste over telefonnumre for Microsofts kundestøttetjenester og informasjon om støttekostnader, kan du gå til følgende Microsoft-webområde:
http://support.Microsoft.com/contactus/?ws=support
Merk I spesielle tilfeller kan avgifter som vanligvis påløper for oppringinger til kundestøtte avbrutt hvis en Microsoft-tekniker avgjør at en bestemt oppdatering løser problemet. Vanlige kundestøttekostnader gjelder for ytterligere kundestøttespørsmål og problemer som ikke dekkes av den gjeldende oppdateringen.Den engelskspråklige versjonen av denne hurtigreparasjonen har filattributtene (eller senere filattributter) som er oppført i følgende tabell. Datoene og klokkeslettene for disse filene er oppført i Coordinated Universal Time (UTC). Når du viser filinformasjonen, konverteres den til lokal tid. Hvis du vil finne forskjellen mellom UTC og lokal tid, kan du bruke kategorien tidssone under dato og klokkeslett i Kontrollpanel.

Status

Microsoft har bekreftet at dette er et problem i Microsoft-produktene som er oppført i delen "Gjelder for". Dette problemet ble først løst i Microsoft Windows 2000 Service Pack 4.

Mer informasjon

Token størrelse beregning Windows 2000 til Windows Server 2008 R2

Hvis du bruker hurtigreparasjonen som er beskrevet i denne artikkelen, har du ikke endre registerverdien MaxTokenSize i de fleste tilfeller. Det er imidlertid noen scenarier der du må endre registerverdien MaxTokenSize etter at du har installert denne hurtigreparasjonen. Når du bruker denne hurtigreparasjonen på alle domenekontrollerne, Bruk følgende formel til å finne ut om du har til å endre verdien for MaxTokenSize:
TokenSize = 1200 + 40 d + 8s
Denne formelen bruker følgende verdier:
  • d: antall Domenelokale grupper en bruker er medlem av pluss antall universalgrupper utenfor brukerens kontodomene som brukeren er medlem av pluss antall grupper representert du sikkerhet Logg-ID (SID).
  • s: antall sikkerhet globale gruppene som brukeren er medlem av pluss antall universalgrupper i brukerens kontodomene som brukeren er medlem av.
  • 1200: den anslåtte verdien for administrasjon av billetten. Denne verdien kan variere, avhengig av faktorer som lengde på navn på DNS-domenet, klientnavn og andre faktorer.
I situasjoner der delegering brukes (for eksempel når brukere godkjennes på en domenekontroller), anbefaler vi at du dobler størrelsen token.

Når du setter registeroppføringen

Hvis token som du beregne ved hjelp av denne formelen, er mindre enn 12 000 byte (standardstørrelse), har du ikke endre registerverdien MaxTokenSize på domeneklienter. Hvis verdien er mer enn 12 000 byte, kan du se følgende Microsoft Knowledge Base-artikkelen for en beskrivelse av hvordan du justerer MaxTokenSize-registerverdi:

263693 Gruppepolicyen kan ikke brukes på brukere som hører til mange grupper

Notater
  • Når du endrer verdien for MaxTokenSize, må du starte datamaskinen slik at endringen blir effektive.
Den anbefalte verdien for registeroppføringen MaxTokenSize er 65535 desimale eller heksadesimale FFFF. MaxTokenSize-verdien angir en fast Kerberos-billetten mottaksbuffer som inneholder sider som representerer grupper som kontoen er medlem.

Hvis du vil bruke en sikker størrelse, kan du velge å sette MaxTokenSize til 48000etter diskusjon om en begrensning introdusert etter HTTP-hodet størrelse senere i denne artikkelen. Avhengig av hvilken verdi du bruker, får du først et problem med Kerberos feilhendelser eller IIS HTTP 400 feil.

Kjente problemer som kan oppstå

Kjente problemer for størrelsen på Access-Token:

Tjenesten for lokale sikkerhetsinstansen (LSA) genererer bruker Access Token fra denne SID-bufferen. Hardkodet begrensning av kunde defineres sider for denne koden er 1,015, kan du se denne Knowledge Base-artikkel:
328889 brukere som er medlemmer av mer enn 1,015 grupper kan påloggingsgodkjenning mislykkes
http://support.Microsoft.com/kb/328889/en-us

Derfor er ikke en MaxTokenSize verdi for mer enn 1015 effektive sider nyttig. I følgende formel:
MaxTokenSize = 1200 + 40 d + 8s
40d, betyr det at du har 40 byte for en lokal gruppe-SID i domenet. 8s betyr 8 byte for et domene Global/Universal gruppe-SID.

Hvis du har en MaxTokenSize verdi av 0x0000FFFF (64K), kan du derfor ikke kunne bufre CA 1600 domene lokal gruppe sider eller omtrent 8000 domene Global/Universal gruppe sider. Hvis du bruker "klarert for delegering" kontoer, kan være Dobbel buffer behovet for hver SID. I disse scenariene, kan du bare lagre ca 800 domene lokal gruppe sider når det brukes en MaxTokenSize verdi av 64 kB. Imidlertid er har bare domenet lokal gruppe sider ikke et vanlig scenario. En verdi på 64 kB være tilstrekkelig selv for delegering-scenarier.

Kjente problemerNår du bruker verdier for MaxTokenSize er større enn 65 535

Tidligere versjoner av denne artikkelen diskuteres verdier på opptil 100000 byte for MaxTokenSize. Vi har oppdaget at versjoner av SMS Administrator har problemer når MaxTokenSize er 100000 eller større. Vi har også funnet at IPSEC IKE-protokollen tillater ikke en sikkerhet BLOB blir større enn 66536 byte, og det vil også mislykkes når MaxTokenSize er satt til en høyere verdi.

Kjente problemer for Internett informasjon serveren HTTP mottaksbuffer

Internet Information Server (IIS) bruker en redusert forespørselen bufferstørrelse til å redusere denial of service angrepsvektor på 64 KB. Imidlertid en Kerberos-billetten i en HTTP-forespørsel er kodet som Base64 (seks biter er utvidet til åtte biter). I tillegg, og av Kerberos-billetten bruker 133 prosent av den opprinnelige størrelsen. Derfor, når den maksimale bufferstørrelsen er 64 KB i IIS, 48 KB av Kerberos-billetten kan brukes.

Hvis du setter registeroppføringen MaxTokenSize til en verdi som er større enn 48000, og bufferplassen brukes for sider, kan det oppstå en feil i IIS. Men hvis du setter registeroppføringen MaxTokenSize til 48000, kan en feil i Kerberos oppstå.

Hvis du vil ha mer informasjon om IIS bufferstørrelser, klikker du følgende artikkelnumre for å vise artiklene i Microsoft Knowledge Base:
310156 Hvordan du begrenser størrelsen på overskriften for HTTP-overføring som IIS godtar en-klient i Windows 2000

920862 Feilmelding når en Outlook Web Access-bruker forsøker å få tilgang til en postboks i Exchange Server 2003: "HTTP 400 Ugyldig forespørsel (forespørselshodet er for langt)"

Windows Server 2012 endringer

Windows Server 2012 innført følgende endringer til vurderinger om denne bufferen:
  • Standard for MaxTokenSize endres til 48 000 byte.
  • Det er et nytt oppsett for komprimering av sidene i PAC.
  • Dynamisk tilgangskontroll legger til Active Directory-krav til billetten. Derfor beregne forventede billett-størrelser er ikke lenger veldig enkelt. Forventningen er at billetter som er utstedt av domenekontrollere for Windows Server 2012 er mindre enn de samme billettene som er utstedt fra eldre operativsystemversjoner. Krav øker størrelsen billett. Etter at Windows Server 2012 filservere bruker krav et bredt, kan du kan forvente å fase ut et stort antall gruppene som kontrollerer filtilgang trimme billett størrelser.

Hvis du vil ha mer informasjon om Windows Server 2012 endringer, kan du gå til følgende Microsoft TechNet-webområde:
http://technet.Microsoft.com/en-us/library/hh831717.aspx

Eksempler på problemer når billetten størrelsen er overskredet

Hvis du vil ha mer informasjon, kan du klikke følgende artikkelnumre for å vise artiklene i Microsoft Knowledge Base:
277741 Internet Explorer-påloggingen mislykkes på grunn av en utilstrekkelig buffer for Kerberos
313661 Feilmelding: "Tidsavbrudd" oppstår når du kobler til SQL Server over TCP/IP og på Kerberos MaxTokenSize er større enn 0xFFFF

Fordi du kanskje har scenarier for pålogging på tvers av domener i skogen, bør verdien settes hele skogen på alle Windows-baserte systemer. Vi anbefaler derfor at den maksimale verdien for MaxTokenSize-verdien er 64 kB.

Viktig På SQL Server-klienter, kan du få følgende feilmelding når dette problemet oppstår:
Kan ikke generere SSPI-kontekst
Hvis du vil løse dette problemet, må du angi registerverdien MaxTokenSize for alle datamaskinene som er involvert i prosessen for Kerberos-godkjenning. Dette inkluderer SQL Server-klienter.

Egenskaper

Artikkel-ID: 327825 - Forrige gjennomgang: 13. juni 2014 - Gjennomgang: 4.0
Informasjonen i denne artikkelen gjelder:
  • Microsoft Windows XP Professional
  • Microsoft Windows XP Professional x64 Edition
  • Microsoft Windows Server 2003 Service Pack 2
  • Windows Vista Business
  • Windows Vista Enterprise
  • Windows Vista Ultimate
  • Windows Server 2008 Datacenter
  • Windows Server 2008 Enterprise
  • Windows Server 2008 Standard
  • Windows Web Server 2008
  • Windows Server 2008 R2 Enterprise
  • Windows Server 2008 R2 Foundation
  • Windows Server 2008 R2 Standard
  • Windows 7 Enterprise
  • Windows 7 Professional
  • Windows 7 Ultimate
  • Windows Server 2012 Datacenter
  • Windows Server 2012 Essentials
  • Windows Server 2012 Foundation
  • Windows Server 2012 Standard
  • Windows 8 Enterprise
  • Windows 8 Pro
  • Microsoft Windows Server 2003 R2 Datacenter Edition (32-Bit x86)
  • Microsoft Windows Server 2003 R2 Datacenter x64 Edition
  • Microsoft Windows Server 2003 R2 Enterprise Edition (32-Bit x86)
  • Microsoft Windows Server 2003 R2 Enterprise x64 Edition
  • Microsoft Windows Server 2003 R2 Standard Edition (32-bit x86)
  • Microsoft Windows Server 2003 R2 Standard x64 Edition
  • Windows 8.1 Enterprise
  • Windows 8.1 Pro
  • Windows Server 2012 R2 Datacenter
  • Windows Server 2012 R2 Essentials
  • Windows Server 2012 R2 Foundation
  • Windows Server 2012 R2 Standard
Nøkkelord: 
kbqfe kbhotfixserver kbsecurity kbwin2ksp4fix kbbug kbfix kbwin2000presp3fix kbwin2000presp4fix kbmt KB327825 KbMtno
Maskinoversatt
VIKTIG: Denne artikkelen ble oversatt med maskinoversettelsesprogramvare fra Microsoft og muligens redigert av Microsoft Community via CTF-teknologi i stedet for av en oversetter. Microsoft tilbyr både menneskelig oversatte og maskinoversatte/Community-redigerte artikler, slik at du får tilgang til alle artiklene i vår Knowledge Base på ditt eget språk. En maskinoversatt eller Community-redigert artikkel er imidlertid ikke alltid perfekt. Den kan inneholde feil i vokabular, syntaks eller grammatikk, mye likt en fremmedspråklig som forsøker å snakke språket ditt. Microsoft har ikke ansvar for unøyaktige opplysninger, feil eller skade forårsaket av feilaktig oversettelse av innholdet eller kundenes bruk av informasjonen. Microsoft oppdaterer jevnlig maskinoversettelsesprogramvaren og -verktøyene for å forbedre redigering av maskinoversatte tekster.
Den engelske versjonen av denne artikkelen er den følgende: 327825

Gi tilbakemelding

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com