Active Directory : samAccountName VS UserPrincipalName

I. Présentation

Dans un environnement Active Directory, chaque objet utilisateur dispose de différents attributs. Dans cette longue liste d'attributs par défaut, on retrouve l'attribut samAccountName et un autre nommé UserPrincipalName appelé également "UPN". Dans cet article, je vais vous expliquer la différence entre les deux.

Pour en savoir plus : Cours Active Directory

II. Un peu d'histoire...

Dans les environnements pré-Windows 2000, on utilisait le samAccountName comme identifiant pour se connecter sur les postes de travail. Attention, cela ne veut pas dire qu'il ne peut plus être utilisé sur les environnements récents. Au contraire, il est encore très utilisé. La nouvelle façon de se connecter sur les environnements depuis Windows 2000 est l'utilisation du UserPrincipalName comme identifiant de connexion.

Aujourd'hui, on a donc deux manières de se connecter sur un poste pour ouvrir sa session : le samAccountName et le UserPrincipalName. Mais alors, quel est l'intérêt de chacun ? Comment se constituent-ils ?

III. L'attribut samAccountName

Commençons par l'attribut le plus ancien : samAccountName. Il est formé de la manière suivante : <NomNetbiosDuDomaine>\<utilisateur>. Par exemple, pour le domaine "it-connect.fr" ayant "ITCONNECT" comme nom NetBios, l'utilisateur "florian" se connectera de cette façon : ITCONNECT\florian. Il pourrait même simplement se connecter avec "florian" car Windows reprend automatiquement le nom NetBios.

Quelques précisions :

- Il est limité à 20 caractères, bien que la limite soit fixée à 256 caractères dans le schéma Active Directory pour des raisons de rétro-compatibilité il n'excède pas 20 caractères. Ceci peut être gênant selon votre convention de nommage pour les logins car ça peut vous obliger à tronquer le nom de la personne par exemple.

- Il doit être unique au niveau du domaine (pour les objets).

- La variable d'environnement %USERNAME% fréquemment utilisée s'appuie sur le samAccountName et non le UserPrincipalName, même si vous êtes connecté sur la machine avec l'UPN.

Maintenant que vous en savez un peu plus sur le samAccountName, passons au UserPrincipalName.

IV. L'attribut UserPrincipalName

La syntaxe pour se connecter en utilisant le UserPrincipalName est différente par rapport au samAccountName. Ici, on utilisera un identifiant suivi du nom de domaine. Par exemple, pour le domaine "it-connect.fr" et l'utilisateur "florian", on se connectera avec l'identifiant suivant : florian@it-connect.fr.

La partie identifiant du samAccountName et de l'UPN peut être différente à chaque fois, ça pourrait être "florian" pour le samAccountName et "florian.burnel" pour l'UPN. Il s'agit bien de deux attributs distincts dans l'annuaire donc deux champs différents.

Quelques précisions :

- L'attribut UserPrincipalName du fait qu'il intègre le domaine peut être identique à l'adresse e-mail de l'utilisateur, ce qui est pratique : un seul identifiant à retenir. Si votre domaine utilise une extension non routable telle que ".local" et que vous souhaitez unifier avec le domaine de messagerie de votre entreprise, c'est envisageable en créant un alias UPN.

- Comme le samAccountName, il doit être unique au niveau du domaine (pour les objets).

- Le format de cet identifiant respecte le standard RFC 822

- Il n'y a pas la limitation de 20 caractères

- L'attribut UserPrincipalName est facultatif, contrairement au samAccountName - Je vous recommande de le renseigner.

Lorsque vous créez un utilisateur dans l'Active Directory, ces deux valeurs doivent être définies, elles correspondent aux champs suivants :

Il est bien entendu possible de modifier ces valeurs par la suite, en accédant aux propriétés d'un utilisateur. Sur une machine où l'on est connecté avec un compte du domaine, si l'on affiche les variables d'environnements (avec la commande "set" en cmd / commande "gci env:" en PowerShell), vous verrez que c'est bien le SamAccountName de l'utilisateur qui est affecté à la variable "USERNAME" :

Suite à ces explications, j'espère que vous y voyez plus clair entre le SamAccountName et le UserPrincipalName.

Partagez cet article Partager sur Twitter Partager sur Facebook Partager sur Linkedin Partager sur Google+ Envoyer par mail

Florian B.

Co-Fondateur d'IT-Connect, je souhaite partager mes connaissances et expériences avec vous, et comme la veille techno' est importante je partage aussi des actus.

florian has 1761 posts and counting.See all posts by florian

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

 

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.