Argomento precedente: Parametri di inputArgomento successivo: Nomi attributo LDAP comuni


Nozioni fondamentali sul filtro di ricerca LDAP

La sintassi del filtro di ricerca LDAP è un'espressione logica in notazione prefisso, in cui l'operatore logico viene visualizzato prima degli argomenti associati.

Esempio: (&(givenname=John)(sn=Green))

Nel filtro sopra riportato & indica l'operatore E e viene visualizzato prima dei relativi argomenti. In questo esempio, si intende cercare oggetti LDAP con John come givenname (givenname l'attributo LDAP per il nome) e Green come sn (sn è l'attributo LDAP per il cognome).

Ogni elemento del filtro è composto utilizzando un identificatore di attributo LDAP e un valore di attributo oppure simboli che identificano il valore dell'attributo. Ogni elemento deve essere racchiuso in un set di parentesi, ad esempio "(sn=Green)".

Gli elementi all'interno di un filtro vengono combinati insieme mediante operatori logici per creare espressioni logiche. Ogni espressione logica può essere ulteriormente combinata con altri elementi che sono essi stessi espressioni logiche, come nel caso di alcuni dei filtri utilizzati in CA Process Automation:

(&(|(objectclass=user)(objectclass=person))(!(objectclass=computer)))

Nel filtro sopra riportato, si esegue la ricerca di tutti gli oggetti in cui objectclass è un utente O una persona:

(|(objectclass=user)(objectclass=person))

E objectclass non è computer

(!(objectclass=computer))

Il simbolo & all'inizio del filtro combina insieme questi due segmenti in un AND logico.

L'objectclass dell'attributo LDAP memorizza il tipo o i tipi di un oggetto LDAP nella directory LDAP.

Nella tabella di seguito sono elencati alcuni degli operatori logici utilizzati per la creazione di filtri:

Simbolo

Descrizione

=

Uguaglianza

Esempio: (givenname=John)

Ricerca di oggetti con John come nome.

&

AND logico

Esempio: (&(givenname=John)(sn=Green))

Ricerca di oggetti con John come nome e Green come cognome

|

OR logico

Esempio: (|(givenname=John)(givenname=Michael))

Ricerca di oggetti con John o Michael come nome

!

NOT logico

Esempio: (&(givenname=John)(!(sn=Green)))

Ricerca di oggetti con John come nome e non Green come cognome

>=

Maggiore di

Esempio: (numsubordinates>=2)

Ricerca di oggetti con 2 o più nodi secondari nella struttura LDAP.

<=

Minore di

Esempio: (numsubordinates<=2)

Ricerca di oggetti con 2 o meno nodi secondari nella struttura LDAP.

=*

Presenza

L'oggetto deve avere l'attributo, ma il relativo valore è irrilevante.

Esempio: (givenname=*)

Ricerca di oggetti con l'attributo givenname.

*

Carattere jolly

Esempio: (givenname=Joh*)

Ricerca di oggetti con givenname che inizia per Joh.