Freigeben über


Windows Server 2008 und neuerer Domänencontroller geben nur 5000 Werte in einer LDAP-Antwort zurück.

Dieser Artikel enthält eine Lösung für ein Problem, bei dem der Windows Server 2008 R2- oder neuere Domänencontroller nur 5000 Werte für eine LDAP-Antwort zurückgibt.

Ursprüngliche KB-Nummer: 2009267

Symptome

Eine LDAP-Anwendung gibt möglicherweise weniger Informationen zurück, wenn eine Abfrage an einen Windows Server 2008- oder Windows Server 2008 R2-Domänencontroller gesendet wird als beim Senden an einen Windows Server 2003-Domänencontroller. Die Abfrageergebnisse werden möglicherweise abgeschnitten oder unvollständig angezeigt. In einigen Fällen erhalten Sie möglicherweise keine Ergebnisse. Wenn beispielsweise eine LDAP-Anwendung die Mitglieder einer Gruppe abfragt, gibt der Windows Server 2008 R2- oder Windows Server 2008-Domänencontroller nur 5000 Mitglieder zurück, während die Windows Server 2003-Domänencontroller viele weitere Mitglieder zurückgeben. In beiden Fällen können Sie dieselbe erweiterte LDAP-Richtlinieneinstellung in NTDSUTIL erkennen, die für die LDAP-Anwendung erforderlich ist. Wenn Sie weitere Informationen zum Anzeigen der LDAP-Richtlinieneinstellungen erhalten möchten, klicken Sie auf die folgende Artikelnummer, um den Artikel in der Microsoft Knowledge Base anzuzeigen:

315071 Anzeigen und Festlegen von LDAP-Richtlinien in Active Directory mithilfe von Ntdsutil.exe

Beispielausgabe:

ldap-Richtlinie: Werte anzeigen

Policy Current(New)

MaxPoolThreads 4
MaxDatagramRecv 4096
MaxReceiveBuffer 10485760
InitRecvTimeout 120
MaxConnections 5000
MaxConnIdleTime 900
MaxPageSize 50000
MaxQueryDuration 120
MaxTempTableSize 10000
MaxResultSetSize-262144
MinResultSets 0
MaxResultSetsPerConn 0
MaxNotificationPerConn 5
MaxValRange 25000

Notiz

Auf beiden Domänencontrollern wird die Einstellung "MaxPageSize" auf 50000 (Standard 1000) und "MaxValRange" auf 25000 (Standard 1500) festgelegt.

Ursache

Interne LDAP-Einschränkungen wurden in Windows Server 2008 R2 und Windows Server 2008 eingeführt, um zu verhindern, dass der Domänencontroller überlastet wird. Diese Grenzwerte überschreiben die LDAP-Richtlinieneinstellung, wenn der Richtlinienwert höher sein sollte.

LDAP-Einstellung Maximalwert (hartcodiert)
MaxReceiveBuffer 20971520
MaxPageSize 20000
MaxQueryDuration 1200
MaxTempTableSize 100.000
MaxValRange 5.000

Daher ist die effektive Einstellung für die oben genannte LDAP-Richtlinie MaxPageSize=50000 und MaxValRange=25000 auf einem Windows Server 2003-Domänencontroller wie in der LDAP-Richtlinie konfiguriert, aber auf einem Windows Server 2008 R2- oder Windows Server 2008-Domänencontroller diktieren die hartcodierten Grenzwerte MaxPageSize=20000 und MaxValRange=5000.
MaxValRange wirkt sich auf die Anzahl der Attribute aus, die für eine Abfrage zurückgegeben werden. Wenn Sie eine LDAP-Abfrage für das mehrwertige Attribut "Member" für ein Gruppenobjekt mit mehr als 5000 Mitgliedern ausführen, gibt der Domänencontroller Windows Server 2008 R2 oder Windows Server 2008 nur 5000 davon zurück.

Lösung

Die neuen Höchstgrenzen, die mit Windows Server 2008 R2 und Windows Server 2008 eingeführt wurden, versuchen, die Meldung zu erzwingen, dass Anwendungen die Richtlinien ad erzwingen sollen. Sie sollten Ihre LDAP-Anwendung entsprechend anpassen. Für die MaxValRange-Einschränkung können Sie die folgenden MSDN-Informationen und Beispiele für die Verwendung von Bereichsabfragen berücksichtigen: Range Retrieval of Attribute Values https://msdn.microsoft.com/library/cc223242(PROT.10).aspx
Im folgenden Codebeispiel werden die Mitglieder einer Gruppe mithilfe der IDirectoryObject-Schnittstelle abgerufen: Beispielcode für "Ranging with IDirectoryObject" https://msdn.microsoft.com/library/aa705923(VS.85).aspx
Im folgenden Codebeispiel werden die Mitglieder einer Gruppe mithilfe der IDirectorySearch-Schnittstelle abgerufen: Beispielcode für "Ranging" mit IDirectorySearch https://msdn.microsoft.com/library/aa705924(VS.85).aspx
Für MaxPageSize wird empfohlen, seitenseitige Abfragen zu verwenden, die auf MSDN wie folgt beschrieben sind: Auslagerung von Suchergebnissen https://msdn.microsoft.com/library/aa367011(VS.85).aspx
ldap_create_page_control-Funktion https://msdn.microsoft.com/library/aa366547(VS.85).aspx
Es gibt eine Möglichkeit, diese Einschränkungen außer Kraft zu setzen, aber wir empfehlen, die Anforderungen mit dem technischen Support von Microsoft zu besprechen, um zu entscheiden, ob das Ändern der Richtlinien der richtige Ansatz ist.

Weitere Informationen

Weitere Informationen zu LDAP-Richtlinien finden Sie unter LDAP-Richtlinien https://msdn.microsoft.com/library/cc223376(PROT.10).aspx