Héritage de classes dans le schéma Active Directory
Toutes les classes d’objets d’un schéma de service d’annuaire Active Directory sont dérivées de la classe spéciale supérieure. À l’exception de top, toutes les classes d’objets sont des sous-classes d’une autre classe d’objet. Par exemple, contact est une sous-classe de organizationalPerson ; organizationalPerson est une sous-classe de personne ; et person est une sous-classe de top. L’attribut subClassOf d’un objet classSchema est une propriété à valeur unique qui indique la superclasse immédiate de la classe .
Certaines des valeurs d’attribut qui définissent une classe sont héritées de ses superclasses. Ainsi, la classe contact hérite des valeurs de ses superclasses, qui sont les classes organizationalPerson, person et top . Une classe hérite des données suivantes de ses superclasses :
- Attributs possibles : les valeurs des attributs mustContain, mayContain, systemMustContain et systemMayContain d’un objet classSchema définissent une liste complète des attributs qui peuvent être définis sur un instance de la classe d’objet. Pour chaque classe d’objet, les valeurs de ces attributs incluent toutes les valeurs héritées de ses superclasses, ainsi que toutes les valeurs définies explicitement pour la classe d’objet elle-même. Ainsi, l’attribut mustContain de la classe organizationalPerson inclut toutes les valeurs mustContain héritées de la personne et des classes supérieures , ainsi que toutes les valeurs mustContain définies explicitement sur la classe organizationalPerson .
- Parents possibles dans la hiérarchie d’annuaires : les valeurs des attributs possSuperiors et systemPossSuperiors d’un objet classSchema définissent une liste complète des classes d’objets qui peuvent contenir un instance de la classe d’objet. Pour chaque classe d’objet, les valeurs incluent celles héritées de ses superclasses, ainsi que celles définies explicitement pour la classe d’objet elle-même.
N’oubliez pas que la classe d’objet peut également avoir de nombreuses classes auxiliaires, qui sont spécifiées dans les attributs auxiliaryClass et systemAuxiliaryClass d’un objet classSchema . Une classe d’objet hérite des valeurs mustContain, mayContain, systemMustContain et systemMayContain de ses classes auxiliaires.