Condividi tramite


Creazione di un filtro di query

Un filtro di query indica a Dominio di Active Directory Services di trovare i dati in una sintassi di query LDAP. Tutte le tecnologie di accesso ai dati specificate elencate nell'argomento Scelta della tecnologia di ricerca supportano la sintassi di query LDAP.

La sintassi di query LDAP è la seguente:

<expression><expression>...

Un filtro può contenere una o più espressioni. Un'espressione ha il formato seguente:

(<logicaloperator><comparison><comparison...>)

dove "<logicaloperator>" è uno dei seguenti.

Operatore Descrizione
"|"
OR logico
"&"
AND logico
"!"
NOT logico

e "<confronto>" sono i seguenti:

(<attribute><operator><value>)

dove "<attribute>" è lDAPDisplayName dell'attributo da valutare, "<value>" è il valore da confrontare e "<operator>" è uno degli operatori di confronto seguenti.

Operatore Descrizione
"="
Uguale a
"~="
Approssimativamente uguale a
"<="
Minore di o uguale a
">="
Maggiore di o uguale a

Inoltre, a seconda della sintassi dell'attributo, il "<valore>" può contenere il simbolo jolly ("*"). Un "<valore>" che contiene solo un carattere jolly verificherà l'esistenza di qualsiasi valore in "<attribute>". Se non viene impostato alcun valore per "<attribute>", il test avrà esito negativo.

Se uno dei caratteri speciali seguenti deve essere visualizzato nel filtro di query come valori letterali, deve essere sostituito dalla sequenza di escape elencata.

Carattere ASCII Sostituzione sequenza di escape
*
"\2a"
(
"\28"
)
"\29"
\
"\5c"
NUL
"\00"

Inoltre, i dati binari arbitrari possono essere rappresentati usando la sintassi della sequenza di escape codificando ogni byte di dati binari con la barra rovesciata seguita da due cifre esadecimali. Ad esempio, il valore a quattro byte 0x00000004 viene codificato come "\00\00\00\04" in una stringa di filtro.

Esempi

La stringa di query seguente cercherà tutti gli oggetti di tipo "computer".

(objectCategory=computer)

La stringa di query seguente cercherà tutti gli oggetti di tipo "computer" con un nome che inizia con "desktop".

(&(objectCategory=computer)(name=desktop*))

La stringa di query seguente cercherà tutti gli oggetti di tipo "computer" con un nome che inizia con "desktop" o un nome che inizia con "notebook".

(&(objectCategory=computer)(|(name=desktop*)(name=notebook*)))

La stringa di query seguente cercherà tutti gli oggetti di tipo "utente" con un numero di telefono di casa.

(&(objectCategory=user)(homePhone=*))

Per altre informazioni sulle stringhe di filtro delle query ed esempi di utilizzo, vedere: