Vous êtes sur la page 1sur 11

Active Directory vous permet de gérer vos ressources réseau de manière simple et centralisée.

Cette gestion
s'appuie sur la structure physique et logique de l'annuaire Microsoft. La structure physique concerne votre
placement des contrôleurs de domaine, les contrôleur de domaine eux-mêmes, les sites Active Directory, et bien
d'autres choses encore. La structure logique, quant à elle, correspond à toute la partie logicielle et de structuration. On
pourra notamment y intégrer les objets, les unités d'organisation (UO / OU), les domaines, les arborescences de
domaine ou encore les forêts Active Directory. Pour créer ces objets logiques, Active Directory va se baser sur le
schéma Active Directory. En effet, lorsque vous allez créer un objet, celui-ci va être validé ou non selon les
informations que vous lui affectez avant d'être écrit dans la base Active Directory.

Ce schéma contient la définition de tous les objets de l'annuaire, plus précisément, le schéma est composé
essentiellement de classes d'objets et d'attributs. Par défaut, votre schéma Active Directory va contenir environ 350
classes d'objet pour un Active Directory fonctionnant sous Windows Server 2003, environ 144 classes pour un
Active Directory fonctionnant sous Windows 2000 server, et des milliers d'attributs.

Il faut savoir que le schéma est modifiable, c'est à dire que vous allez pouvoir rajouter ou modifier des classes
afin d'adapter le schéma de votre Active Directory selon vos besoins. Microsoft demande par contre une grande
vigilance concernant la modification du schéma puisque votre modification aura un impact sur tout votre réseau
Active Directory.
1. Objets, classes d'objet et attributs
1.1 Les objets
Dans Active Directory, les objets représentent les éléments de base qui composent votre réseau, par exemple,
un utilisateur, un serveur, un contrôleur de domaine, un site Active Directory. Pour créer un objet, Active Directory va
se baser sur le schéma Active Directory, plus précisément sur les classes d'objet contenue dans le schéma. Les classes
d'objets servent en fait de modèle à l'annuaire pour créer des objets. Il faut savoir que l'annuaire ne pourra créer des
objets que si ils sont conformes aux classes contenues dans schéma.

1.2 Les classes d'objets


Comme dans la plus part des annuaires, les classes d'objets et les attributs sont stockés dans une structure
logique qui va décrire de manière précise chacune des classes et chacun des attributs de ces classes. Cet espace de
stockage est appelé schéma.

Mais qu'est-ce qu'une classe ?


Une classe est composée d'une liste d'attributs. Chacun de ces attributs peut être défini comme obligatoire ou
optionnel. Il faut savoir qu'un attribut est un élément qui défini un objet tandis qu'une classe est composée d'attributs
déclarés. C'est à dire qu'un attribut lié à une classe peut être utilisé dans une autre classe. Par exemple, l'attribut pour
le "Nom" utilisé dans la classe user, utilisée pour créer un utilisateur, peut être présent dans une autre classe.
En plus de contenir une liste d'attribut, les classes contiennent également des règles. Par exemple, une de ces
règles pourra définir les relations les classes pouvant être supérieures à un objet créé à partir d'une autre classe. C'est
une règle importante car c'est notamment grâce à elle que vous allez pouvoir appliquer la stratégie CGDLA (des
comptes d'utilisateur dans des groupes globaux, les groupes globaux dans des domaines locaux et enfin les
autorisations).

La présences de ces règles est illustrée directement dans les propriétés de la classe en question. En effet, en
utilisant des outils tel que la console Schéma Active Directory ou ADSI Edit, on peut visualiser très facilement les
propriétés des classes. Ici, nous avons les propriétés de la classe user qui est utilisé notamment pour la création
d'utilisateur.
On voit directement les classes supérieures à user, en effet, notre objet user créé à partir de cette classe pourra être
placé, par

exemple, dans un objet créé à partir de la classe organizationlUnit, c'est à dire une unité d'organisation. Le
schéma étant modifiable, vous pouvez remarquer la présence du bouton Ajouter une classe parente afin de définir
vous même une classe parente présente dans votre schéma.

De la même manière vous pouvez définir les classes inférieures. C'est en fait l'opération inverse de la classe
supérieure, c'est à dire que vous pouvez définir quels sont les objets susceptible d'être contenu dans votre classe.

1.3 Les attributs

Nous allons maintenant nous intéresser aux attributs. Vous savez qu'une classe va avoir un certains nombre d'attribut lié. T
vous créez un objet à partir d'un classe, il est rare que vous ayez à remplir tous les champs demandés. En effet, vous ne devrez ren

Dans notre exemple, nous examinons la classe organizationalUnit qui va être utilisée pour créer des objets de type
grand nombre d'attribut. Mais seulement un est obligatoire, l'attribut ou. Cette attribut est obligatoire et vous devrez donc le rense
renseigne le nom l'objet.

Encore une fois, vous remarquez que vous avez la possibilité d'ajouter des attributs à votre classe via le bouton

Intéressons nous directement aux propriétés d'un attribut, mail, qui est utilisé pour l'adresse e-mail d'un
utilisateur et qui est lié notamment à la classe user :
De prime abord, on voit qu'un attribut possède un certain nombre de propriété. Chacune de ces propriétés est
modifiable afin de vous permettre d'affiner au maximum vos réglages. Nous allons passer en revue certaines de ces
propriétés de manière à vous familiariser avec celles-ci.

• Description : Ce champs vous permet de décrire les fonctions de votre attribut. Généralement, la
description et le nom commun est le même.
• Nom commun : C'est le nom qui va être utilisé pour la liaison entre vos attributs et vos classe. C'est sous
ce nom qu'apparaitra votre attribut dans la liste des attributs de votre classe.
• ID d'objet X.500 : Cet ID a été assigné par l'ISO et est unique sur tous les réseau dans le monde. Ces ID
ont été défini par l'ISO afin d'éviter les conflits entre les différents annuaires tel que Active Directory ou
OpenLDAP. Il faut savoir que chaque classe et attribut du schéma dispose d'un ID X.500.
• Syntaxe : Elle vous permet de définir le type de attribut, par exemple un booléen, une chaine de caractère.

Pour plus d'information sur ces champs, nous les reverrons dans la partie de création d'attribut.

• Autoriser cet attribut à apparaître dans le mode d'affichage détaillé : Cette option est explicite et
vous permet d'afficher l'attribut dans le cas ou vous avez activé l'affichage détaillé.
• L'attribut est actif : Cette option est importante et n'est disponible qu'en niveau fonctionnel de forêt
Windows Server 2003 (pour plus d'information, consultez cet article). Par défaut, Active Directory ne
vous permet pas de supprimer des attributs ou des classes. par contre, vous allez pouvoir les désactiver via
cette option. Si un attribut est désactivé, il ne plus être lié à des classes.
• Indexer cet attribut dans Active Directory : Cette option permet de faire apparaitre l'attribut et sa valeur
dans l'annuaire Active Directory.
• Résolution de nom ANR (Ambiguous Name Resolution) : Cette option est utilisée dans les recherches,
plus particulièrement lorsque les attributs recherchés ne sont pas connus par la personne initiant la
recherche. Par exemple, lorsque vous allez faire une recherche dans l'annuaire pour trouver l'utilisateur
Ismaël Limbada et que cet utilisateur est référencé sous la forme Limbada II, Ismaël, la résolution de nom
ANR va renvoyer une correspondance.
• Répliquer cet attribut dans le catalogue global : le catalogue global est en fait un rassemblement de
certains attributs d'objets créés dans Active Directory. Cette option vous permet de placer l'attribut dans le
catalogue global afin d'optimiser les recherches.
• L'attribut est copié lors de la duplication de l'utilisateur : C'est une option uniquement utilisable sur
les attributs qui sont lié à la classe utilisateur. L'option permet de conserver les valeurs de l'attributs lors
d'une copie.
• Indexer cet attribut pour les recherches en conteneur dans Active Directory : Cet option vous permet
d'activer des recherches sur un attribut se trouvant dans un conteneur comme une unité d'organisation.
Cela permet notamment de gagner du temps et de monopoliser trop longtemps son ordinateur.

1.4 Création d'un attribut

Le schéma Active Directory est relativement flexible et il vous permet de créer vos propres classes et
attributs. Pour accéder à l'assistant de création d'un attribut, il vous suffit de vous rendre dans la console Schéma
Active Directory, de faire un clic droit sur le conteneur Attribut et de choisir Créer un nouvel attribut ...

La création étant assez simple, nous verrons juste les points qui peuvent poser problème lors de la création
d'un attribut, notamment au niveau de l'ID d'objet X.500 qui doit être unique.
Vous retrouverez ci-dessus la fenêtre qui va vous permettre de créer un attribut. Vous avez remarqué que
lorsque l'on affiche les propriétés d'un attribut, certains champs affiche les informations LDAP de cet attribut. Lors de
la création d'un attribut, Active Directory vous demande de renseigner ces champs. Au niveau de la convention de
nom, Microsoft recommande de nommer ses attributs de la manière suivante : nomunNomdeux.

Nous allons directement nous intéresser au champs ID d'objet X.500. En effet, pour pouvoir remplir ce champs, il va
falloir utiliser un outil externe nommé OID Generator (OIDGen.exe) fournit dans le kit de ressource de Windows
2000 Server. Cet utilitaire est très simple d'emploi puisqu'il va fournir une série de chiffe à compléter pour obtenir un
ID d'objet X.500. Par exemple, OID Generator va vous fournir cette série de chiffre :
1.2.840.113556.1.5.7000.111.2014652.180672.30.178511.21396.1226462.1996501. Votre objet devra donc porter
comme ID d'objet X.500 : 1.2.840.113556.1.5.7000.111.2014652.180672.30.178511.21396.1226462.1996501.1.

2. Maître d'opération et stockage du schéma


2.1 Le contrôleur de schéma
Nous savons qu'Active Directory possède un système de réplication multimaître, c'est à dire que chaque
contrôleur de domaine est capable de modifier les informations d'Active Directory. Hors ce système de réplication
peut engendrer des conflits lors de ces réplications. Par exemple, si deux personnes modifient la même information en
même temps, on aura un conflit d'information.

Vous vous en doutez, si ce genre de conflit survenait pour des modifications "critiques" sur la base de données
Active Directory, cela pourrait compromettre totalement votre réseau. C'est pourquoi Microsoft a défini cinq rôles de
maître d'opération afin d'éviter tout conflit. En effet, chaque contrôleur de domaine possédant un rôle précis sera le
seul contrôleur de domaine capable d'effectuer la fonction lié au rôle sur Active Directory. Pour plus d'information sur
les maître d'opération, je vous invite à consulter cet article.

Pour cet article, nous nous intéresseront seulement au rôle de contrôleur de schéma. Ce maître d'opération
est unique au niveau de la forêt, c'est dire que vous ne retrouverez qu'un seul contrôleur de schéma dans toute votre
forêt Active Directory. Le contrôleur de domaine possédant le rôle de contrôleur de schéma sera le seul contrôleur de
domaine autorisé à modifier le schéma.

Ce qui veut dire que dans toute votre forêt Active Directory, vous n'aurez qu'un seul contrôleur de domaine
capable de modifier le schéma. Cet fonction de modification n'est pas la seule fonction du contrôleur du schéma. En
effet, ce maître d'opération va intervenir dans chaque action sollicitant le schéma. Il va notamment gérer la réplication
du schéma afin que tout les contrôleurs de domaine aient la dernière version du schéma. Il va également contrôler les
modifications du schéma, pour vérifier si elles sont correctes, et vérifier les permissions de l'utilisateur qui va modifier
le schéma.

2.2 Stockage et rechargement


Vous l'aurez compris, le schéma joue un rôle essentiel dans votre infrastructure Active Directory. Mais où est
ce que va être stocké le schéma Active Directory ? Celui-ci est présent à deux endroits sur un contrôleur de domaine.
Ces deux endroits sont en fait deux copies du schéma.
Il faut savoir que chaque contrôleur dispose de sa copie du schéma Active Directory. Chacune de ces copies est placé
dans la partition logique nommée Partition de schéma. Cette partition est en lecture seule sauf sur le contrôleur de
schéma qui a le droit de modifier le schéma. Pour rappel sur les partitions d'annuaire, vous retrouverez quatre
partitions d'annuaire sous Windows Server 2003 (partition de domaine, de configuration, de schéma et d'application),
tandis que vous n'en retrouverez que trois sous Windows 2000 Server (partition de domaine, de configuration, de
schéma). Chacune de ces partitions est logique et est stockée dans la base de données Active Directory.

Le deuxième endroit où vous pourrez trouver le schéma est la mémoire. C'est cette copie qui est réellement
utilisé par votre contrôleur de domaine.

Lorsque vous allez faire une modification sur le schéma, c'est à dire une modification sur une classe
ou un attribut ou tout simplement la création d'un attribut, celle-ci doit être validé par le contrôleur de
schéma. Une fois validé, votre opération va être tout d'abord inscrite dans l'annuaire Active Directory, c'est à
dire dans la partition de schéma. Ces modifications ne seront placées dans la mémoire qu'après un temps de
latence de cinq minutes. Ce temps de latence est utilisé afin de pouvoir regrouper un ensemble de
modifications pour éviter de devoir mettre à jour le schéma, et donc de le recharger, toutes les 30 secondes.
Le fait de devoir mettre à jour le schéma en mémoire est appelé rechargement du schéma.
NB : Les 5minutes de latences corresponde à la valeur du paramètre schema cache update.

Il faut noter que ce temps de latence de cinq minutes aura pour répercussion de ne pas avoir un
schéma à jour sur tous les contrôleurs de domaine. C'est pourquoi Microsoft a implémenté une fonction de
rechargement manuelle via la console schéma Active Directory. Par contre cette fonction doit être utilisé
avec parcimonie. En effet, Microsoft préconise de minimiser les rechargements du schéma. Microsoft
conseille donc de n'utiliser cette fonction qu'une fois toutes les modifications finies afin de ne recharger
qu'une seule fois le schéma.

Dans le cas où vous modifierez plusieurs fois votre schéma dans une durée dépassant cinq minutes,
il se pourrait que plusieurs copie du schéma soit mise en mémoire. En effet, les anciennes versions du
schéma sont déchargés seulement lorsque l'ordinateur redémarre. Cependant, l'espace mémoire occupé
par le schéma est vraiment minime. En admettant que vous ne modifiez votre schéma 10 fois par jours
pendant 7 jours, l'espace mémoire occupé par le schéma sera de quatorze MO, ce qui n'est pas énorme.

Enfin, lorsque vous mettez à jour votre schéma Active Directory, cette action va générer une
réplication urgente sur tous les contrôleurs de domaine de votre forêt, ce qui aura pour effet de générer un
trafic réseau important.

3. Accès au schéma et protection


3.1 Accès au schéma
Par défaut, les outils permettant d'accéder au schéma ne sont pas installés. Cependant l'installation n'est pas
compliquée et rapide. Nous vous détaillerons ici le déblocage de la console MMC Schéma Active Directory. C'est la
console la plus utilisé et la plus simple pour modifier le schéma.
Dans un premier temps, il vous enregistrer une DLL afin de pouvoir activer la console. Pour se faire, rendez-
vous dans une invite de commande et rentrez la commande suivante : regsvr32 schmmgmt.dll. Si la commande
réussi, vous devriez obtenir le message ci-contre.

Une fois que vous aurez enregistré la DLL, vous aurez fait le gros du travail. Il ne vous restera plus qu'a
ouvrir la console MMC. Pour cela, dans une boîte de dialogue exécuter, taper mmc.

A partir de la fenêtre MMC vide, il vous suffit d'ajouter le composant enfichable nommé Schéma Active
Directory pour obtenir la console de gestion du schéma de Microsoft.

Cette console est très utile puisqu'elle va vous permettre de visualiser l'intégralité des classes d'objet, des
attributs. elle vous permet aussi de recharger le schéma via le menu Action, de créer ses propres objets et d'afficher
les propriétés de chaque objet.

3.2 Protection du schéma


Active Directory est un annuaire sécurisé. Il est donc normal que ses fonctions vitale le soit aussi. C'est
pourquoi le schéma Active Directory est sécurisé via les Access Control List, plus connue sous le nom d'ACL. Ces
ACL permettent l'accès et la modifications du schéma aux Administrateurs du schéma seulement. Ainsi, pour
pouvoir modifier ou encore rajouter des objets à votre schéma, vous devez être membre de ce groupe. Il faut savoir
que par défaut, il n'ya qu'un seul compte membre de ce groupe. Ce compte est le compte administrateur du domaine
racine de la forêt. Une fois de plus, la vérification de l'accès au schéma est vérifié par le contrôleur de schéma.

Le groupe Administrateurs du schéma est un groupe universel. Hors les groupes universel ne sont
disponible qu'en niveau fonctionnel Windows 2000 Natif, et par défaut, un domaine est installé en niveau fonctionnel
Windows 2000 Mixte. C'est pourquoi dans le cas d'un domaine fraichement installé et fonctionnant donc en niveau
Windows 2000 Mixte, le groupe Administrateurs du schéma est un groupe de sécurité Global. Si vous augmentez le
niveau fonctionnel de votre domaine en mode Windows Server 2003 ou en Windows 2000 Natif, alors le groupe sera
automatiquement transformé en groupe de sécurité universel.

Conclusion
Vous avez pu le voir durant la lecture de cet article, mais le schéma joue un rôle essentiel dans l'architecture d'Active
Directory. Le schéma est notamment utilisé pour tout ce qui va concerner la création d'objet dans Active Directory,
cela concerne aussi bien la création de compte d'utilisateur ou d'unité d'organisation que la création de zone DNS
intégré à Active Directory. Il faut également savoir que le schéma est régi par un contrôleur de domaine possédant le
rôle de contrôleur de schéma. C'est ce contrôleur de schéma qui gérer la mise à jour du schéma, les autorisations de
modifications et la réplication de ces mises à jour.

Les dernières chose à savoir sur le schéma sont les suivantes :

• Lorsque vous allez modifier le schéma pour rajouter vos classes ou vos attributs, cette modification va
être envoyée à tous les contrôleurs de domaine de votre forêt, sans exception, ce qui peut entrainer une
surcharge de votre réseau.
• Les objets que vous avez rajouté au schéma ne peuvent en aucun cas être supprimé. Si vous ne voulez
plus utiliser l'objet que vous avez créer, vous ne pouvez que le désactiver.
• Les classes System du schéma ne peuvent pas être modifiés.