Condividi tramite


Visualizzare e impostare i criteri LDAP in Active Directory usando Ntdsutil.exe

Questo articolo descrive come gestire i criteri LDAP (Lightweight Directory Access Protocol) usando lo strumento Ntdsutil.exe.

Numero KB originale: 315071

Riepilogo

Per assicurarsi che i controller di dominio possano supportare le garanzie a livello di servizio, è necessario specificare limiti operativi per molte operazioni LDAP. Questi limiti impediscono che operazioni specifiche influiscano negativamente sulle prestazioni del server. Inoltre, rendono il server più resiliente ad alcuni tipi di attacchi.

I criteri LDAP vengono implementati tramite oggetti della queryPolicy classe . Gli oggetti Criteri di query possono essere creati nel contenitore Criteri di query, che è un elemento figlio del contenitore del servizio directory nel contesto di denominazione della configurazione. Ad esempio, cn=Query-Policies,cn=Directory Service,cn=Windows NT,cn=Services configuration naming context.

Limiti di amministrazione LDAP

I limiti di amministrazione LDAP sono:

  • InitRecvTimeout: questo valore definisce il tempo massimo in secondi in cui un controller di dominio attende che il client invii la prima richiesta dopo che il controller di dominio riceve una nuova connessione. Se il client non invia la prima richiesta in questo intervallo di tempo, il server disconnette il client.

    Valore predefinito: 120 secondi

  • MaxActiveQueries: numero massimo di operazioni di ricerca LDAP simultanee che possono essere eseguite contemporaneamente in un controller di dominio. Quando viene raggiunto questo limite, il server LDAP restituisce un errore occupato .

    Valore predefinito: 20

    Nota

    Questo controllo ha un'interazione non corretta con il valore MaxPoolThreads. MaxPoolThreads è un controllo per processore, mentre MaxActiveQueries definisce un numero assoluto. A partire da Windows Server 2003, MaxActiveQueries non viene più applicato. Inoltre, MaxActiveQueries non viene visualizzato nella versione di Windows Server 2003 di NTDSUTIL.

    Valore predefinito: 20

  • MaxConnections: numero massimo di connessioni LDAP simultanee accettate da un controller di dominio. Se viene stabilita una connessione dopo che il controller di dominio raggiunge questo limite, il controller di dominio elimina un'altra connessione.

    Valore predefinito: 5000

  • MaxConnIdleTime: tempo massimo in secondi in cui il client può essere inattivo prima che il server LDAP chiuda la connessione. Se una connessione è inattiva per più di questo periodo, il server LDAP restituisce una notifica di disconnessione LDAP.

    Valore predefinito: 900 secondi

  • MaxDatagramRecv: dimensione massima di una richiesta di datagramma che verrà elaborata da un controller di dominio. Le richieste maggiori del valore per MaxDatagramRecv vengono ignorate.

    Valore predefinito: 4.096 byte

  • MaxNotificationPerConnection: numero massimo di richieste di notifica in sospeso consentite in una singola connessione. Quando viene raggiunto questo limite, il server restituisce un errore occupato a qualsiasi nuova ricerca di notifica eseguita su tale connessione.

    Valore predefinito: 5

  • MaxPageSize: questo valore controlla il numero massimo di oggetti restituiti in un singolo risultato di ricerca, indipendentemente dalla dimensione di ogni oggetto restituito. Per eseguire una ricerca in cui il risultato potrebbe superare questo numero di oggetti, il client deve specificare il controllo di ricerca di paging. Si tratta di raggruppare i risultati restituiti in gruppi non più grandi del valore MaxPageSize. Per riepilogare, MaxPageSize controlla il numero di oggetti restituiti in un singolo risultato di ricerca.

    Valore predefinito: 1.000

  • MaxPoolThreads: numero massimo di thread per processore dedicati da un controller di dominio all'ascolto dell'input o dell'output di rete (I/O). Questo valore determina anche il numero massimo di thread per processore che possono lavorare contemporaneamente sulle richieste LDAP.

    Valore predefinito: 4 thread per processore

  • MaxResultSetSize: tra le singole ricerche che costituiscono una ricerca di risultati di paging, il controller di dominio può archiviare i dati intermedi per il client. Il controller di dominio archivia questi dati per velocizzare la parte successiva della ricerca dei risultati di paging. Il valore MaxResultSize controlla la quantità totale di dati archiviati dal controller di dominio per questo tipo di ricerca. Quando viene raggiunto questo limite, il controller di dominio elimina il meno recente di questi risultati intermedi per fare spazio per archiviare i nuovi risultati intermedi.

    Valore predefinito: 262.144 byte

  • MaxQueryDuration: tempo massimo in secondi che un controller di dominio spenderà per una singola ricerca. Quando viene raggiunto questo limite, il controller di dominio restituisce un errore " timeLimitExceeded". Le ricerche che richiedono più tempo devono specificare il controllo risultati di paging.

    Valore predefinito: 120 secondi

  • MaxTempTableSize: durante l'elaborazione di una query, può dblayer provare a creare una tabella di database temporanea da cui ordinare e selezionare i risultati intermedi. Il limite MaxTempTableSize controlla le dimensioni di questa tabella di database temporanea. Se la tabella di database temporanea contiene più oggetti rispetto al valore di MaxTempTableSize, dblayer esegue un'analisi molto meno efficiente del database DS completo e di tutti gli oggetti nel database DS.

    Valore predefinito: 10.000 record

  • MaxValRange: questo valore controlla il numero di valori restituiti per un attributo di un oggetto, indipendentemente dal numero di attributi dell'oggetto o dal numero di oggetti presenti nel risultato della ricerca. In Windows 2000 questo controllo è hardcoded a 1.000. Se un attributo ha più del numero di valori specificati dal valore MaxValRange, è necessario usare i controlli intervallo di valori in LDAP per recuperare i valori che superano il valore MaxValRange. MaxValueRange controlla il numero di valori restituiti su un singolo attributo in un singolo oggetto.

    • Valore minimo: 30
    • Valore predefinito: 1500

Avviare Ntdsutil.exe

Ntdsutil.exe si trova nella cartella Strumenti di supporto nel CD-ROM di installazione di Windows. Per impostazione predefinita, Ntdsutil.exe viene installato nella cartella System32.

  1. Fare clic su Start quindi scegliere Esegui.
  2. Nella casella di testo Apri digitare ntdsutil e quindi premere INVIO. Per visualizzare la Guida in qualsiasi momento, digitare ? al prompt dei comandi.

Visualizzare le impostazioni correnti dei criteri

  1. Al prompt dei comandi Ntdsutil.exe digitare LDAP policiese quindi premere INVIO.
  2. Al prompt dei comandi dei criteri LDAP digitare connectionse quindi premere INVIO.
  3. Al prompt dei comandi di connessione al server digitare connect to server <DNS name of server>e quindi premere INVIO. Si vuole connettersi al server con cui si sta lavorando.
  4. Al prompt dei comandi di connessione al server digitare qe quindi premere INVIO per tornare al menu precedente.
  5. Al prompt dei comandi dei criteri LDAP digitare Show Valuese quindi premere INVIO.

Viene visualizzata una visualizzazione dei criteri esistenti.

Modificare le impostazioni dei criteri

  1. Al prompt dei comandi Ntdsutil.exe digitare LDAP policiese quindi premere INVIO.

  2. Al prompt dei comandi dei criteri LDAP digitare Set <setting> to <variable>e quindi premere INVIO. Ad esempio, digitare Set MaxPoolThreads su 8.

    Questa impostazione cambia se si aggiunge un altro processore al server.

  3. È possibile usare il Show Values comando per verificare le modifiche.

    Per salvare le modifiche, usare Commit Changes (Esegui commit modifiche).

  4. Al termine, digitare qe quindi premere INVIO.

  5. Per uscire da Ntdsutil.exe, al prompt dei comandi digitare qe quindi premere INVIO.

Nota

Questa procedura mostra solo le impostazioni dei criteri di dominio predefiniti. Se si applica un'impostazione di criteri personalizzata, non è possibile visualizzarla.

Requisito di riavvio

Se si modificano i valori per i criteri di query attualmente in uso da un controller di dominio, tali modifiche diventano effettive senza un riavvio. Tuttavia, se viene creato un nuovo criterio di query, è necessario un riavvio per rendere effettivi i nuovi criteri di query.

Considerazioni sulla modifica dei valori delle query

Per mantenere la resilienza del server di dominio, non è consigliabile aumentare il valore di timeout di 120 secondi. La creazione di query più efficienti è una soluzione preferita. Per altre informazioni sulla creazione di query efficienti, vedere Creazione di applicazioni Microsoft Active Directory-Enabled più efficienti.

Tuttavia, se la modifica della query non è un'opzione, aumentare il valore di timeout solo in un controller di dominio o solo in un sito. Per istruzioni, vedere la sezione successiva. Se l'impostazione viene applicata a un controller di dominio, ridurre la priorità LDAP DNS nel controller di dominio, in modo che i client useranno meno probabilmente il server per l'autenticazione. Nel controller di dominio con la priorità di aumento usare l'impostazione del Registro di sistema seguente per impostare LdapSrvPriority:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Netlogon\Parameters

Nel menu Modifica selezionare Aggiungi valore e quindi aggiungere il valore del Registro di sistema seguente:

  • Nome voce: LdapSrvPriority
  • Tipo di dati: REG_DWORD
  • Valore: impostare il valore sul valore della priorità desiderata.

Per altre informazioni, vedere Come ottimizzare la posizione di un controller di dominio o di un catalogo globale che si trova all'esterno del sito di un client.

Istruzioni per la configurazione per controller di dominio o per criterio sito

  1. Creare un nuovo criterio di query in CN=Query-Policies,CN=Directory Service,CN=Windows NT,CN=Services,CN=Configuration, forest root.

  2. Impostare il controller di dominio o il sito in modo che punti al nuovo criterio immettendo il nome distinto del nuovo criterio nell'attributo Query-Policy-Object . Il percorso dell'attributo è il seguente:

    • Il percorso del controller di dominio è CN=NTDS Settings, CN= DomainControllerName, CN=Servers,CN= site name,CN=Sites,CN=Configuration, forest root.

    • Il percorso del sito è CN=NTDS Site Settings,CN= site name,CN=Sites,CN=Configuration, forest root.

Script di esempio

È possibile usare il testo seguente per creare un file Ldifde. È possibile importare questo file per creare i criteri con un valore di timeout di 10 minuti. Copiare questo testo in Ldappolicy.ldf, quindi eseguire il comando seguente, dove la radice della foresta è il nome distinto della radice della foresta. Lasciare intaso DC=X. Si tratta di una costante che verrà sostituita dal nome radice della foresta quando viene eseguito lo script. La costante X non indica un nome di controller di dominio.

ldifde -i -f ldappolicy.ldf -v -c DC=X DC= forest root

Avviare lo script Ldifde

dn: CN=Extended Timeout,CN=Query-Policies,CN=Directory Service,CN=Windows NT,CN=Services,CN=Configuration,DC=X  
changetype: add  
instanceType: 4  
lDAPAdminLimits: MaxReceiveBuffer=10485760  
lDAPAdminLimits: MaxDatagramRecv=1024  
lDAPAdminLimits: MaxPoolThreads=4  
lDAPAdminLimits: MaxResultSetSize=262144  
lDAPAdminLimits: MaxTempTableSize=10000  
lDAPAdminLimits: MaxQueryDuration=300  
lDAPAdminLimits: MaxPageSize=1000  
lDAPAdminLimits: MaxNotificationPerConn=5  
lDAPAdminLimits: MaxActiveQueries=20  
lDAPAdminLimits: MaxConnIdleTime=900  
lDAPAdminLimits: InitRecvTimeout=120  
lDAPAdminLimits: MaxConnections=5000  
objectClass: queryPolicy  
showInAdvancedViewOnly: TRUE

Dopo aver importato il file, è possibile modificare i valori della query usando Adsiedit.msc o Ldp.exe. L'impostazione MaxQueryDuration in questo script è di 5 minuti.

Per collegare i criteri a un controller di dominio, usare un file di importazione LDIF simile al seguente:

dn: CN=NTDS  
Settings,CN=DC1,CN=Servers,CN=site1,CN=Sites,CN=Configuration, DC=X  
changetype: modify  
add: queryPolicyobject  
queryPolicyobject: CN=Extended Timeout,CN=Query-Policies,CN=Directory Service,CN=Windows NT,CN=Services,CN=Configuration,DC=X

Importarlo usando il comando seguente:

ldifde -i -f link-policy-dc.ldf -v -c DC=X DC= **forest root**

Per un sito, il file di importazione LDIF conterrà:

dn: CN=NTDS Site Settings,CN=site1,CN=Sites,CN=Configuration, DC=X  
changetype: modify  
add: queryPolicyobject  
queryPolicyobject: CN=Extended Timeout,CN=Query-Policies,CN=Directory Service,CN=Windows NT,CN=Services,CN=Configuration,DC=X

Nota

Ntdsutil.exe visualizza solo il valore nei criteri di query predefiniti. Se vengono definiti criteri personalizzati, non vengono visualizzati da Ntdsutil.exe.