Les principaux attributs d’objets dans l’Active Directory
Par défaut, tout annuaire Active Directory contient des instances d’objets de différentes classes, par exemple des comptes utilisateurs, des groupes, des unités d’organisation ou encore un ordinateur.
Les classes d’objets disponibles sont définies directement dans le schéma Active Directory que vous utilisez.
Dans ce module du cours sur l’Active Directory, nous allons voir les principaux attributs utilisés dans l’annuaire et qu’il est important de connaître.
I. Les principales classes
Avant de s’intéresser aux attributs, nous allons rapidement voir les principales classes d’objets, puisque ce sont ces classes qui contiennent les attributs que nous verrons après.
Nom | Description |
Ordinateur | Les ordinateurs clients intégrés au domaine, mais aussi les serveurs et les contrôleurs de domaine |
Contact | Enregistrer des contacts, sans autorisation d’authentification |
Groupe | Regrouper des objets au sein d’un groupe, notamment pour simplifier l’administration (attribution de droits à un service « informatique » qui correspond à un groupe nommé « informatique », par exemple) |
Unité d’organisation | Dossier pour créer une arborescence et organiser les objets. |
Imprimante | Ressource de type « imprimante » |
Utilisateur | Comptes utilisateurs qui permettent de s’authentifier sur le domaine, et accéder aux ressources, aux ordinateurs |
Le tableau ci-dessus regroupe les classes d’objets les plus utilisées et les plus courantes.
Je tiens à préciser tout de même que par défaut l'Active Directory intègre déjà des containers (Users, Builtin, etc) et qui, à la différence des unités d'organisation natives, ne peuvent pas se voir appliquer des stratégies de groupe (GPO) et qu'il n'est pas possible de créer une délégation sur ces containers.
C'est petite précision étant dite, intéressons-nous aux attributs.
II. Les identifiants uniques : DistinguishedName et GUID
Comme je le disais dans un module précédent de ce cours, chaque objet dispose d’identifiants uniques qui sont représentés par deux attributs : le DistinguishedName et le GUID.
A. Le DistinguishedName
Cet identifiant unique également appelé « DN » représente le chemin LDAP qui permet de trouver l’objet dans l’annuaire Active Directory. Lors de l’étude du protocole LDAP, nous avions déjà vu un exemple de DN.
Voici un autre exemple :
- Domaine : it-connect.local
- Unité d’organisation où se trouve l’objet : informatique
- Nom de l’objet : Florian
Le DN de cet objet utilisateur sera :
cn=Florian,ou=informatique,dc=it-connect,dc=local
Dans ce DN, on trouve un chemin qui permet de retrouver l’objet, différents éléments sont utilisés :
Identification de l’élément | Description |
cn | CommonName – Nom commun – Nom de l’objet final ciblé |
ou | OrganizationalUnit – Unité d’organisation |
dc | Composant de domaine – Utilisé pour indiquer le domaine cible, avec un élément « dc » par partie du domaine |
Le DN peut être très long si l’arborescence de l’annuaire est importante et que l’objet se trouve au fin fond de cette arborescence. De plus, le DN peut changer régulièrement si l’objet est déplacé, ou si une unité d’organisation dont il dépend est renommée puisqu’il contient de manière nominative les objets.
B. Le GUID
Le GUID (Globally Unique IDentifier) est un identificateur global unique qui permet d’identifier un objet d’un annuaire Active Directory. Il correspond à l’attribut « ObjectGUID » dans le schéma Active Directory.
Il est attribué à l’objet dès sa création et ne change jamais, même si l’objet est déplacé ou modifié. Le GUID suit un objet de la création jusqu’à la suppression.
Codé sur 128 bits, le GUID d’un objet est unique au sein d’une forêt et il est généré par un algorithme qui garantit son unicité. Des informations aléatoires, d’autres non, comme l’heure de création de l’objet .
III. Les attributs indispensables
Après avoir vu les attributs ObjectGUID et DistinguishedName, continuons notre quête des attributs avec ce tableau qui récapitule les attributs que l’on manipule le plus souvent.
Nom de l’attribut dans le schéma | Nom de l’attribut dans la console Active Directory | Description |
sAMAccountName | « Nom d’ouverture de session de l’utilisateur » | Valeur que devra utiliser l’objet pour s’authentifier sur le domaine |
UserPrincipalName | « Nom d’ouverture de session de l’utilisateur » concaténé au nom du domaine sous la forme « @it-connect.local » | Nom complet de l’utilisateur avec le domaine inclus. Également appelé UPN |
description | Description | Description de l’objet |
Adresse de messagerie | Adresse de messagerie attribuée à l’objet | |
adminCount | - | Égal à « 1 » s’il s’agit d’un compte de type « Administrateur », égal à « 0 » s’il ne l’est pas |
DisplayName | Nom complet | Nom complet qui sera affiché pour cet utilisateur |
givenName | Prénom | Prénom de l’utilisateur |
logonCount | - | Nombre d’ouverture de session réalisée par cet objet |
accountExpires | Date d’expiration du compte | Date à laquelle le compte ne sera plus utilisable (peut être vide) |
ObjectSID | - | Identifiant de sécurité unique qui permet d’identifier un objet |
pwdLastSet | - | Dernière fois que le mot de passe fût modifié |
userAccountControl | - | État du compte – Une dizaine de codes différents sont possibles |
Pour illustrer mes propos, voici une sortie PowerShell qui affiche quelques attributs et leurs valeurs, concernant l’utilisateur « Florian » :
Note : le PowerShell est un langage de script qui prend une place de plus en plus importante au sein des systèmes d’exploitation Windows, pour assurer la configuration en ligne de commandes et faciliter l’automatisation des tâches.
Vous avez désormais connaissance des attributs les plus manipulés et consultés de l’Active Directory. Cela sera utile lorsque vous consulterez le schéma, un journal d’événement (log) ou encore lors de la manipulation de l’Active Directory avec PowerShell ou des utilitaires.
🧲 Ressource supplémentaire : Correspondance entre les champs Active Directory et les attributs LDAP