SID

De wiki.nexiat.fr
Aller à la navigation Aller à la recherche
Fiche express
Domaine Identification Windows / Active Directory
Contexte Identifiant unique de sécurité (compte, groupe, domaine)
Format S-1-5-21-<domaine>-<RID>
Voir aussi Kerberos · NTLM · LDAP

Le SID (Security Identifier) est l'identifiant unique attribué par Windows à tout principal de sécurité : compte utilisateur, groupe, ordinateur ou domaine. C'est le SID, et non le nom du compte, qui est réellement utilisé en interne par Windows pour accorder ou refuser des droits d'accès (dans les listes de contrôle d'accès, ACL) : renommer un compte ne change pas son SID, et donc pas ses autorisations.

Structure d'un SID

Un SID se présente sous forme d'une chaîne du type :

S-1-5-21-1004336348-1177238915-682003330-1013

Décomposition :

  • S — indique qu'il s'agit d'un SID.
  • 1 — numéro de révision de la structure (constant à ce jour).
  • 5 — autorité émettrice (identifier authority), 5 correspondant à l'autorité NT.
  • 21-...-...-... — identifiant du domaine ou de la machine locale, une valeur générée pour
 être unique à chaque domaine/poste.
  • RID (Relative Identifier, dernier segment) — identifie de façon unique le compte ou le
 groupe au sein de ce domaine ; les RID inférieurs à 1000 sont réservés aux comptes et
 groupes intégrés (créés automatiquement par Windows), les comptes créés ensuite recevant des
 RID à partir de 1000 (1000, 1001, 1002...).

SID bien connus (well-known SIDs)

Certains SID sont fixes et identiques sur toute installation Windows, indépendamment du domaine :

  • S-1-1-0 — Everyone (tout le monde)
  • S-1-5-18 — Système local (LocalSystem)
  • S-1-5-32-544 — groupe Administrateurs (Administrators) local
  • S-1-5-32-545 — groupe Utilisateurs (Users) local
  • Dans un domaine, le RID 500 désigne toujours le compte Administrateur intégré, et le RID
 501 le compte Invité intégré (à vérifier selon les versions).

Consulter un SID

Depuis une invite de commandes Windows :

whoami /user

Pour lister les comptes locaux et leurs SID :

wmic useraccount get name,sid

Ou en PowerShell :

Get-LocalUser | Select-Object Name, SID

SID et authentification

Le SID est au cœur des mécanismes d'authentification et d'autorisation Windows/Active Directory : un ticket Kerberos (dans son PAC, Privilege Attribute Certificate) comme un jeton d'authentification NTLM embarquent le SID de l'utilisateur ainsi que ceux des groupes dont il est membre, permettant au système cible de vérifier ses droits sans avoir à interroger de nouveau l'annuaire (LDAP/Active Directory) à chaque accès.

Voir aussi

  • Kerberos — le SID figure dans le PAC des tickets Kerberos
  • NTLM — mécanisme d'authentification alternatif s'appuyant également sur le SID
  • LDAP — protocole d'accès à l'annuaire où sont stockés comptes, groupes et leurs SID