Partager via


Caractéristiques des classes d’objets

Chaque classe d’objet dans Active Directory Domain Services est définie par un objet classSchema dans le conteneur de schéma. Les attributs d’un objet classSchema spécifient les caractéristiques de la classe, telles que :

  • Identifiants de classe : Les classes ont plusieurs identifiants incluant ldapDisplayName, qui sont utilisés par les clients LDAP pour identifier la classe dans les filtres de recherche, et schemaIDGUID, qui sont utilisés dans les descripteurs de sécurité pour contrôler l’accès à la classe.
  • Attributs possibles : Une définition de classe d’objet inclut des listes des attributs obligatoires et facultatifs qui peuvent être définis sur une instance de la classe.
  • Parents possibles : Chaque instance d’objet, sauf la racine de la hiérarchie de l’annuaire, a exactement un parent. Une définition de classe d’objet inclut des listes des parents possibles, c’est-à-dire des classes d’objets qui peuvent contenir une instance de la classe.
  • Superclasses et classes auxiliaires : Chaque classe d’objet (sauf top) est dérivée d’une autre classe. Une classe hérite des attributs possibles et des parents possibles des classes au-dessus d’elle dans la hiérarchie des classes. Une classe peut également avoir un nombre quelconque de classes auxiliaires à partir desquelles elle hérite des listes d’attributs possibles. Pour plus d’informations, veuillez consulter la rubrique Héritage de classe dans le schéma Active Directory.

Le tableau suivant répertorie le lDAPDisplayName et la description des attributs clés d’un objet classSchema. Pour plus d’informations, et une liste complète des attributs obligatoires et facultatifs d’un objet classSchema, voir classSchema.

lDAPDisplayName Description
cn Chaque objet dans Active Directory Domain Services a un attribut de nommage à partir duquel son nom distinctif relatif (RDN) est formé. L’attribut de nommage pour les objets classSchema est cn (Nom commun). La valeur attribuée à cn est la valeur que la classe d’objet aura comme son RDN. Par exemple, le cn de la classe d’objet organizationalUnit est Unité organisationnelle, qui apparaîtrait dans un nom distinctif comme CN=Unité organisationnelle. Le cn doit être unique dans le conteneur de schéma.
lDAPDisplayName Le nom utilisé par les clients LDAP, tels que le fournisseur LDAP ADSI, pour faire référence à la classe, par exemple pour spécifier la classe dans un filtre de recherche. Le lDAPDisplayName d’une classe doit être unique dans le conteneur de schéma, ce qui signifie qu’il doit être unique dans l’ensemble des objets classSchema et attributeSchema. Pour plus d’informations sur la composition d’un cn et d’un lDAPDisplayName pour une nouvelle classe, veuillez consulter la rubrique Attributs et classes de nommage.
schemaIDGUID Un GUID stocké sous forme de chaîne d’octets. Ce GUID identifie de manière unique la classe. Ce GUID peut être utilisé dans les entrées de contrôle d’accès pour contrôler l’accès aux objets de cette classe. Pour plus d’informations, veuillez consulter la rubrique Définition des autorisations sur les opérations d’objets enfants. Lors de la création de l’objet classSchema, le serveur Active Directory génère cette valeur s’il n’est pas spécifié. Si vous créez une nouvelle classe, générez votre propre GUID pour chaque classe afin que toutes les installations de votre extension utilisent le même schemaIDGUID pour faire référence à la classe.
adminDisplayName Un nom d’affichage de la classe à utiliser dans les outils d’administration. Si adminDisplayName n’est pas spécifié lors de la création d’une classe, le système utilise la valeur de Nom commun comme nom d’affichage. Ce nom d’affichage est utilisé uniquement si une correspondance n’existe pas dans la propriété classDisplayName du spécificateur d’affichage pour la classe. Pour plus d’informations, veuillez consulter les sections Spécificateurs d’affichage et Noms d’affichage de classe et d’attribut.
governsID L’OID de la classe. Cette valeur doit être unique parmi les governsIDs de tous les objets classSchema et les attributeIDs de tous les objets attributeSchema. Pour plus d’informations, veuillez consulter la rubrique Identifiants d’objet.
rDnAttId Identifie l’attribut de nommage, qui est l’attribut qui fournit le RDN pour cette classe si différent du défaut (cn). L’utilisation d’un attribut de nommage autre que cn est déconseillée. Les attributs de nommage doivent être extraits de l’ensemble bien connu (OU, CN, O, L et DC) qui est compris par tous les clients LDAP version 3. Pour plus d’informations, veuillez consulter les section Noms et identités d’objets et Syntaxes pour les attributs dans Active Directory Domain Services. Un attribut de nommage doit avoir la syntaxe de chaîne d’annuaire. Pour plus d’informations, veuillez consulter la rubrique Syntaxes pour les attributs dans les Active Directory Domain Services.
mustContain, systemMustContain Une paire de propriétés multivaluées qui spécifient les attributs qui doivent être présents sur les instances de cette classe. Ce sont des attributs obligatoires qui doivent être présents lors de la création et ne peuvent pas être effacés après la création. Après la création de la classe, ces propriétés ne peuvent pas être modifiées. L’ensemble complet des attributs obligatoires pour une classe est l’union des valeurs systemMustContain et mustContain sur cette classe et toutes les classes héritées.
mayContain, systemMayContain Une paire de propriétés multivaluées qui spécifient les attributs qui PEUVENT être présents sur les instances de cette classe. Ce sont des attributs facultatifs qui ne sont pas obligatoires et, par conséquent, peuvent être présents ou non sur une instance de cette classe. Vous pouvez ajouter ou supprimer des valeurs mayContain d’un objet classSchema existant de catégorie 1 ou catégorie 2. Avant de supprimer une valeur mayContain d’un objet classSchema, vous devez rechercher les instances de la classe d’objet et effacer toute valeur pour l’attribut que vous supprimez. Après la création de la classe, la propriété systemMayContain ne peut pas être modifiée. L’ensemble complet des attributs facultatifs pour une classe est l’union des valeurs systemMayContain et mayContain sur cette classe et toutes les classes héritées.
possSuperiors, systemPossSuperiors Une paire de propriétés multivaluées qui spécifient les classes structurelles qui peuvent être les parents légaux des instances de cette classe. L’ensemble complet des parents possibles est l’union des valeurs systemPossSuperiors et possSuperiors sur cette classe et toutes les classes structurelles ou abstraites héritées. Les valeurs systemPossSuperiors et possSuperiors ne sont pas héritées des classes auxiliaires. Vous pouvez ajouter ou supprimer des valeurs possSuperiors d’un objet classSchema existant de catégorie 1 ou catégorie 2. Après la création de la classe, la propriété systemPossSuperiors ne peut pas être modifiée.
objectClassCategory Une valeur entière qui spécifie la catégorie de la classe, qui peut être l’une des suivantes :
  • Structurelle, ce qui signifie qu’elle peut être instanciée dans l’annuaire.
  • Abstraite, ce qui signifie que la classe fournit une définition de base d’une classe qui peut être utilisée pour former des classes structurelles.
  • Auxiliaire, ce qui signifie qu’une classe qui peut être utilisée pour étendre la définition d’une classe qui hérite d’elle mais ne peut pas être utilisée pour former une classe en soi.
Pour plus d’informations, veuillez consulter la rubrique Classes structurelles, abstraites et auxiliaires.
subClassOf Un OID pour la superclasse immédiate de cette classe, c’est-à-dire la classe à partir de laquelle cette classe est dérivée. Pour les classes structurelles, subClassOf peut être une classe structurelle ou abstraite.
Pour les classes abstraites, subClassOf peut être une classe abstraite seulement.
Pour les classes auxiliaires, subClassOf peut être une classe abstraite ou auxiliaire.
Si vous définissez une nouvelle classe, assurez-vous que la classe subClassOf existe ou existera lorsque la nouvelle classe sera écrite dans l’annuaire. Si la classe n’existe pas, l’objet classSchema n’est pas ajouté à l’annuaire.
auxiliaryClass, systemAuxiliaryClass Une paire de propriétés multivaluées qui spécifient les classes auxiliaires dont cette classe hérite. L’ensemble complet de classes auxiliaires est l’union des valeurs systemAuxiliaryClass et auxiliaireClass sur cette classe et toutes les classes héritées. Pour un objet classSchema existant, des valeurs peuvent être ajoutées à la propriété auxiliaryClass mais pas supprimées. Après la création de la classe, la propriété systemAuxiliaryClass ne peut pas être modifiée.
defaultObjectCategory Le nom distinctif de cette classe d’objet ou de l’une de ses superclasses. Lorsqu’une instance de cette classe d’objet est créée, le système définit la propriété objectCategory de la nouvelle instance sur la valeur spécifiée dans la propriété defaultObjectCategory de sa classe d’objet. La propriété objectCategory est une propriété indexée utilisée pour augmenter l’efficacité des recherches de classe d’objet. Si defaultObjectCategory n’est pas spécifié lors de la création d’une classe, le système la définit sur le nom distinctif (DN) de l’objet classSchema pour cette classe. Si cet objet sera fréquemment interrogé par la valeur d’une superclasse plutôt que par la classe de l’objet lui-même, vous pouvez définir defaultObjectCategory sur le DN de la superclasse. Par exemple, si vous créez une sous-classe d’une classe prédéfinie (catégorie 1), la meilleure pratique est de définir defaultObjectCategory sur la même valeur que la superclasse. Cela permet à l’interface utilisateur standard de « trouver » votre sous-classe.
Pour plus d’informations, veuillez consulter la rubrique Classe d’objet et catégorie d’objet.
defaultHidingValue Une valeur booléenne qui spécifie le paramètre par défaut de la propriété showInAdvancedViewOnly des nouvelles instances de cette classe. De nombreux objets annuaire ne sont pas intéressants pour les utilisateurs finaux. Pour éviter que ces objets n’encombrent l’interface utilisateur, chaque objet a un attribut booléen appelé showInAdvancedViewOnly. Si defaultHidingValue est défini sur TRUE, les nouvelles instances d’objet sont masquées dans les extensions d’administration et la coquille Windows. Un élément de menu pour la classe d’objet n’apparaîtra pas dans le menu contextuel Nouveau des extensions d’administration même si les propriétés du créateur appropriées sont définies sur l’objet displaySpecifier de la classe d’objet.
Si defaultHidingValue est défini sur FALSE, les nouvelles instances de l’objet sont affichées dans les extensions d’administration et l’interface Windows. Définissez cette propriété sur FALSE pour voir les instances de la classe dans les extensions d’administration et l’interface, et activer un créateur de paramètres et son élément de menu dans le menu Nouveau des extensions d’administration.
Si la valeur defaultHidingValue n’est pas définie, la valeur par défaut est TRUE.
systemFlags Une valeur entière qui contient des indicateurs qui définissent des propriétés supplémentaires de la classe. Le bit 0x10 identifie une classe de catégorie 1 (une classe qui fait partie du schéma de base inclus avec le système). Vous ne pouvez pas définir ce bit, ce qui signifie que le bit n’est pas défini dans les classes de catégorie 2 (qui sont des extensions du schéma).
systemOnly Une valeur booléenne qui spécifie si seul le serveur Active Directory peut modifier la classe. Les classes réservées au système peuvent être créées ou supprimées uniquement par l’Agent de système d’annuaire (DSA). Les classes réservées au système sont celles dont le système dépend pour des opérations normales.
defaultSecurityDescriptor Spécifie le descripteur de sécurité par défaut pour les nouveaux objets de cette classe. Pour plus d’informations, veuillez consulter les sections Descripteur de sécurité par défaut et Comment les descripteurs de sécurité sont définis sur les nouveaux objets d’annuaire.
isDefunct Une valeur booléenne qui indique si la classe est obsolète. Pour plus d’informations, veuillez consulter la rubrique Désactiver les classes et attributs existants.
description Une description textuelle de la classe à utiliser par les applications administratives.
objectClass Identifie la classe d’objet dont cet objet est une instance, qui est la classe d’objet classSchema pour toutes les définitions de classe et la classe d’objet attributeSchema pour toutes les définitions d’attribut.