Création d’un filtre de requête
Un filtre de requête indique services de domaine Active Directory 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 des requêtes LDAP.
La syntaxe de requête LDAP est la suivante :
<expression><expression>...
Un filtre peut contenir une ou plusieurs expressions. Une expression a le formulaire suivant :
(<logicaloperator><comparison><comparison...>)
où «< logicaloperator> » est l’un des éléments suivants.
Opérateur | Description |
---|---|
"|" |
OR logique |
"&" |
AND logique |
"!" |
NOT logique |
et «< comparaison> » sont les suivants :
(<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 vérifie l’existence de n’importe quelle valeur dans «< attribut> ». Si aucune valeur n’est définie pour «< attribut> », 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, ils doivent être remplacés 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 encodage de 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 » avec un nom commençant 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 domestique.
(&(objectCategory=user)(homePhone=*))
Pour plus d’informations sur les chaînes de filtre de requête et les exemples d’utilisation, consultez :