Numéro d'article: 269181 - Dernière mise à jour: mercredi 8 février 2006 - Version: 3.0

Comment faire pour interroger Active Directory à l'aide d'un filtre au niveau du bit

A noterCet article s'applique à un système d'exploitation différent de celui que vous utilisez. Le contenu de l'article qui ne vous concerne peut-être pas est désactivé.
Agrandir tout | Réduire tout

Résumé

Certains attributs sur des objets Active Directory sont composés d'indicateurs de bits. Il se peut que vous deviez rechercher des objets à l'aide d'un opérateur de bits pour renvoyer uniquement les objets qui correspondent à un bit particulier qui est défini. Utilisez les contrôles de la règle de correspondance de LDAP (Lightweight Directory Access Protocol) pour ce faire.

Plus d'informations

Le format de la règle de correspondance de LDAP présente la syntaxe suivante :
nomattribut : ruleOID: = valeur
nomattribut est le LDAPDisplayName de l'attribut, ruleOID est l'ID de l'objet (OID) pour le contrôle correspondant de la règle et valeur est la valeur décimale à utiliser pour la comparaison. Vous devez convertir hexadécimal en décimal.

La valeur de ruleOID peut être une des opérations suivantes :
  • 1.2.840.113556.1.4.803 - Il s'agit de la règle LDAP_MATCHING_RULE_BIT_AND. La règle correspondante a la valeur true uniquement si tous les bits à partir de la propriété correspond à la valeur. Cette règle ressemble à l'opérateur de bits AND.
  • 1.2.840.113556.1.4.804 - Il s'agit de la règle LDAP_MATCHING_RULE_BIT_OR. La règle correspondante a la valeur true si tous les bits à partir de la propriété correspond à la valeur. Cette règle ressemble à l'opérateur de bits OR.
Un exemple est lorsque vous souhaitez interroger Active Directory pour les objets de classe utilisateur sont désactivées. L'attribut qui conserve cette information est l'attribut userAccountControl. Cet attribut est composé d'une combinaison d'indicateurs différents. L'indicateur pour définissant l'objet que vous souhaitez désactiver est UF_ACCOUNTDISABLE, a la valeur 0 x 02 (décimal 2). Le filtre de comparaison au niveau du bit spécifie userAccountControl avec le jeu de bits UF_ACCOUNTDISABLED ressemble à ceci :
(UserAccountControl:1.2.840.113556.1.4.803:=2)
l'exemple de script Microsoft Visual Basic suivant utilise ce qui précède filtre de comparaison au niveau du bit :
Set oNSP = GetObject("LDAP://Win2000Server/rootdse")
Set oConfig = GetObject("LDAP://Win2000Server/" & oNSP.get("DefaultNamingContext"))

Set oConn = CreateObject("ADODB.Connection")
oConn.Provider = "ADSDSOObject"
oConn.Open ""

strQuery = "<" & oConfig.ADsPath & ">;(&(objectCategory=person)(objectClass=User)(userAccountControl:1.2.840.113556.1.4.803:=2));name,objectClass;subtree"

Set oRS = oConn.Execute(strQuery)
While Not oRS.EOF
  MsgBox oRS.Fields("name") 
  oRS.MoveNext
Wend

MsgBox "done"

Set oConn = Nothing
Set oRS = Nothing
Set oConfig = Nothing
Set oNSP = Nothing
				

Références

Pour plus d'informations sur l'utilisation de la règle de correspondance de LDAP, consultez le Kit de développement logiciel (SDK) Platform. Ces informations se trouvent dans le contenu à :

Networking and Directory Services
  Active Directory, ADSI, and Directory Services
     Active Directory
        Using Active Directory
           Searching the Active Directory
             Creating a Query Filter
                 How to Specify Comparison Values 

				
Pour plus d'informations sur l'utilisation de la règle de correspondance de LDAP, consultez les exemples inclus dans le Kit de développement Platform SDK. Ces exemples se trouvent dans les dossiers de SDK\Samples\NetDs\ADSI\Samples\ActiveDir\GetSchemaInfo et \Microsoft PlatformSDK\Samples\NetDs\ADSI\Samples\ActiveDir\Attributes.

Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft Active Directory Service Interfaces 2.5
  • Microsoft Active Directory Service Interfaces 2.5
  • Microsoft Active Directory Service Interfaces 2.5
Mots-clés : 
kbmt kbhowto kbmsg KB269181 KbMtfr
Traduction automatiqueTraduction automatique
IMPORTANT : Cet article est issu du système de traduction automatique mis au point par Microsoft (http://support.microsoft.com/gp/mtdetails). Un certain nombre d?articles obtenus par traduction automatique sont en effet mis à votre disposition en complément des articles traduits en langue française par des traducteurs professionnels. Cela vous permet d?avoir accès, dans votre propre langue, à l?ensemble des articles de la base de connaissances rédigés originellement en langue anglaise. Les articles traduits automatiquement ne sont pas toujours parfaits et peuvent comporter des erreurs de vocabulaire, de syntaxe ou de grammaire (probablement semblables aux erreurs que ferait une personne étrangère s?exprimant dans votre langue !). Néanmoins, mis à part ces imperfections, ces articles devraient suffire à vous orienter et à vous aider à résoudre votre problème. Microsoft s?efforce aussi continuellement de faire évoluer son système de traduction automatique.
La version anglaise de cet article est la suivante: 269181  (http://support.microsoft.com/kb/269181/en-us/ )
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.
Retired KB ArticleExclusion de responsabilité concernant les contenus obsolètes dans la Base de connaissances
Cet article concerne des produits pour lesquels Microsoft n'offre plus de support. Il est par conséquent fourni « en l'état » et ne sera plus mis à jour.