Esecuzione di query per oggetti schema categoria 1 o 2

L'attributo systemFlags degli oggetti attributeSchema e classSchema è una maschera di bit integer che contiene flag che indicano qualità di sistema aggiuntive dell'attributo o della classe. L'enumerazione ADS_SYSTEMFLAG_ENUM contiene valori che corrispondono ai bit che è possibile impostare nell'attributo systemFlags . Sono disponibili altri bit systemFlags che non è possibile impostare, ad esempio il bit 0x10 che indica se l'attributo o la classe è categoria 1 o categoria 2. Il bit 0x10 è impostato per gli oggetti categoria 1, ovvero le classi e gli attributi inclusi nello schema di base incluso nel sistema. Il bit non è impostato per gli attributi e le classi della categoria 2, che sono estensioni dello schema. Se non esiste alcuna proprietà systemFlags in un oggetto attributeSchema o classSchema , è la categoria 2.

La regola di corrispondenza LDAP_MATCHING_RULE_BIT_AND può essere usata per cercare gli oggetti con il flag 0x10 impostato nell'attributo systemFlags . Per altre informazioni, vedere sintassi del filtro di ricerca.

Esecuzione di query per la categoria 1

La stringa di query seguente cerca gli attributi della categoria 1 (oggetti attributeSchema con il bit 0x10 impostato nella proprietà systemFlags ).

(&(objectCategory=attributeSchema)(systemFlags:1.2.840.113556.1.4.803:=16) )

Tenere presente che, nell'esempio precedente, la sintassi di query LDAP richiede valori decimali; pertanto, il valore esadecimale del flag deve essere convertito in decimale. In questo caso, la categoria 1 bit è 0x10 quindi il valore del filtro deve essere specificato come 16.

Esecuzione di query per la categoria 2

La stringa di query seguente cerca gli attributi della categoria 2 (oggetti attributeSchema che non hanno il bit 0x10 impostato nella proprietà systemFlags ).

(&(objectCategory=attributeSchema)(!(systemFlags:1.2.840.113556.1.4.803:=16)))

Tenere presente che questa query restituisce anche oggetti attributeSchema che non dispongono di una proprietà systemFlags e, pertanto, in modo implicito non dispongono del set di flag specificato.