Ricerca in Active Directory
Una funzione importante di Active Directory consiste nel risolvere le query sui dati per le persone, nonché i dati di configurazione per computer e servizi. Per scrivere query efficienti per Active Directory, è utile avere familiarità con quanto segue:
- Determinazione dell'ambito della query: il client deve trovare le proprietà per gli oggetti che potrebbero trovarsi in un punto qualsiasi all'interno di una foresta o solo all'interno di un dominio o all'interno di una determinata unità organizzativa (OU)?
- Determinazione della profondità della query: la query deve cercare solo un livello o passare in altre directory LDAP?
- Prestazioni e gestione di set di risultati di grandi dimensioni: in che modo il client deve gestire efficacemente il potenziale di un set di risultati di grandi dimensioni?
- Determinazione delle query migliori: quale tipo di query offre i risultati più efficienti? Quale tipo di query deve evitare lo sviluppatore?
- Informazioni sulla sintassi delle query: ADSI supporta sia la sintassi LDAP documentata in RFC 2254, sia un subset di SQL.
- Scelta di interfacce: ADSI fornisce sia il supporto OLE DB che un'interfaccia C/C++ denominata IDirectorySearch. Poiché ADSI funziona per più spazi dei nomi, è possibile usare queste interfacce per eseguire query su altri spazi dei nomi, ad esempio Exchange, nonché Active Directory. Poiché ActiveX Data Object (ADO) è un semplice modello a oggetti di accesso ai dati con script su OLE DB, le interfacce OLE DB funzionano bene per i programmatori di Visual Basic e gli script di pagine Web. Le nuove funzionalità di accesso ai dati all'interno di Visual Studio e app Office licazioni che sfruttano ADO e OLE DB possono ora accedere ai dati di Active Directory nello stesso modo in cui accedono ai dati da altri provider OLE DB, ad esempio SQL Server. Tuttavia, se uno sviluppatore C/C++ deve eseguire una ricerca di directory semplice, l'interfaccia IDirectorySearch potrebbe essere più appropriata rispetto alle interfacce OLE DB.
Negli argomenti seguenti viene descritto come eseguire una ricerca in Active Directory per garantire che l'applicazione esequisi la query più efficiente, in base ai requisiti del client:
- Ambito della query
- Prestazioni e gestione di set di risultati di grandi dimensioni
- Sintassi del filtro di ricerca
- Interfacce di query
- Ricerca di dati binari
- Query distribuite