Création d’un filtre de requête

Un filtre de requête indique à services de domaine Active Directory de rechercher des données dans une syntaxe de requête LDAP. Toutes les technologies d’accès aux données spécifiées répertoriées dans la rubrique Choix de la technologie de recherche prennent en charge la syntaxe de requête LDAP.

La syntaxe de requête LDAP est la suivante :

<expression><expression>...

Un filtre peut contenir une ou plusieurs expressions. Une expression a la forme suivante :

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

où «< logicaloperator> » est l’un des éléments suivants.

Opérateur Description
"|"
OR logique
"&"
AND logique
"!"
Not logique

et «< comparaison> » est le suivant :

(<attribute><operator><value>)

où «< attribute> » est l’attribut lDAPDisplayName de l’attribut à évaluer, «< value> » est la valeur à comparer et «< operator> » est l’un des opérateurs de comparaison suivants.

Opérateur Description
"="
Égal à
"~="
Approximativement égal à
"<="
Inférieur ou égal à
">="
Supérieur ou égal à

En outre, selon la syntaxe de l’attribut, la «< valeur> » peut contenir le symbole générique (« * »). Une «< valeur> » qui contient uniquement un caractère générique case activée pour l’existence d’une valeur dans «< attribute> ». Si aucune valeur n’est définie pour «< attribute> », le test échoue.

Si l’un des caractères spéciaux suivants doit apparaître dans le filtre de requête en tant que littéraux, il doit être remplacé par la séquence d’échappement répertoriée.

Caractère ASCII Remplacement de séquence d’échappement
*
« \2a »
(
"\28"
)
"\29"
\
« \5c »
NUL
"\00"

En outre, les données binaires arbitraires peuvent être représentées à l’aide de la syntaxe de séquence d’échappement en encodant chaque octet de données binaires avec la barre oblique inverse suivie de deux chiffres hexadécimaux. Par exemple, la valeur de quatre octets 0x00000004 est encodée en tant que « \00\00\00\04 » dans une chaîne de filtre.

Exemples

La chaîne de requête suivante recherche tous les objets de type « ordinateur ».

(objectCategory=computer)

La chaîne de requête suivante recherche tous les objets de type « ordinateur » dont le nom commence par « desktop ».

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

La chaîne de requête suivante recherche tous les objets de type « ordinateur » avec un nom commençant par « bureau » ou un nom commençant par « notebook ».

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

La chaîne de requête suivante recherche tous les objets de type « utilisateur » qui ont un numéro de téléphone personnel.

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

Pour plus d’informations sur les chaînes de filtre de requête et les exemples d’utilisation, consultez :