Winlogon - Définition

Source: Wikipédia sous licence CC-BY-SA 3.0.
La liste des auteurs de cet article est disponible ici.

Introduction

Winlogon est un composant de Windows qui gère l'ouverture et la fermeture de session, et le Ctrl-Alt-Delete. En particulier,

  • il charge le profil d'un utilisateur après qu'il s'est authentifié
  • il gère l'écran de veille ; sur le retour au mode normal, on peut paramétrer WinLogon pour obliger l'utilisateur à s'authentifier une nouvelle fois.

Les fonctionnalités d'authentification et d'identification sont faites via la bibliothèque logicielle GINA (Graphical Identification aNd Authorization). Winlogon gère les fonctions d'interface intermédiaire, qui sont indépendantes de la stratégie d'authentification.

Il implémente aussi les opérations de time-out.

Winlogon vérifie aussi la licence Windows.

Processus système critique

WinLogon est un des processus système critiques de windows, c'est-à-dire qu'il ne peut être arrêté. Les autres processus critiques sont :

  • lsass.exe (sécurité locale)
  • services (Windows Service Controller)
  • smss.exe (Gestionnaire de session)
  • csrss.exe (Client/Server Runtime SubSystem)

Ctrl-Alt-Suppr

Ctrl-Alt-Suppr intercepté par WinLogon

WinLogon intercepte les Ctrl-Alt-Sup. Dans ce cas, il appelle les fonctions de traitement du SAS (Secure attention key) dans la bibliothèque GINA. Voir (en) en:Secure attention key

Comparatif avec le ctrlaltsuppr de linux

Dans la configuration de la plupart des distributions linux, la frappe de Ctrl-Alt-Suppr provoque le reboot (shutdown -r) du système, à moins qu'une interface graphique soit active. Ceci est paramétré par une ligne du fichier inittab (ligne contenant la chaîne de caractères ctrlaltsuppr).

NB : dans le cas d'une interface graphique sous linux, le ctrlaltsuppr est dans la plupart des cas intercepté par des processus intermédiaires et ne provoque donc pas le reboot.

Procédure de démarrage de winlogon

Voir Processus de démarrage de Windows NT#Winlogon

Le shell de Windows

Après qu'un utilisateur s'est authentifié, il travaille sous un shell graphique, en général Explorateur Windows (explorer.exe).

En fait, le shell utilisé est un paramètre de Winlogon ; à la place de l'explorateur Windows, on peut mettre par exemple LiteStep.

Ce paramètre de Winlogon est défini par l'entrée du registre HKey_Current_User\Software\Microsoft\Windows NT\CurrentVersion\Winlogon>Shell .

Un WINLOGON.EXE pour chaque utilisateur connecté

S'il y a N utilisateurs qui ont ouvert une session, il y aura

  • Un SEUL processus smss.exe (Session Manager SubSystem)
  • N processus winlogon.exe
  • N processus csrss.exe (Client/Server Runtime SubSystem)

Chargement d'un profil utilisateur

Quand un utilisateur s'est connecté et authentifié, WinLogon charge son profil dans le registre ; cela permet aux processus de cet utilisateur d'utiliser la clé de registre HKEY_CURRENT_USER (plus exactement, toutes les données qui sont sous l'arborescence correspondante). WinLogon fait cela automatiquement après un login réussi et avant l'activation du shell de l'utilisateur.

Fonction CreateProcessAsUser

Sur la connexion d'un utilisateur, WinLogon appelle une fonction de la bibliothèque GINA, qui elle-même appelle une fonction appelée CreateProcessAsUser. Ce comportement par défaut peut éventuellement être modifié pour des besoins spécifiques (sécurité ou autre).

Écran d'accueil sur la connexion d'un utilisateur

Écran d'accueil sur la connexion d'un utilisateur de Windows

La liste des utilisateurs qui apparaissent éventuellement dans l'écran d'accueil est fonction du paramétrage de Winlogon. Exemple : pour que l'utilisateur Dupont n'apparaisse pas dans cette liste, il faut créer une valeur "Dupont", valeur 0 de type Dword dans HKey_Local_Machine\Software\Microsoft\Windows NT\CurrentVersion\Winlogon\SpecialAccounts\UserList". Dans le cas particulier d'un utilisateur qui a été renommé, le nom de la valeur doit être le nom initial de l'utilisateur (par exemple Dupont dans le cas d'un Mr Dupont ayant changé de patronyme pour Dupond, et il faudra créer une valeur Dword nommée Dupont à 0 pour éviter qu'il apparaisse dans l'écran d'accueil).

L'utilitaire regedit n'affichera la clé SpecialAccounts que si l'utilisateur a des droits suffisants, par exemple, s'il est membre du groupe des administrateurs.

REMARQUE

L'affichage ou le non-affichage du dernier utilisateur connecté avec succès n'est pas un paramètre de Winlogon (paramètre Dontdisplaylastusername de HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\Network)

Comparatif avec l'écran d'accueil de linux sur la connexion d'un utilisateur

Sous linux, les logiciels gdmlogin et kdm (pour KDE) font partie de ceux qui assurent une fonction analogue à celle de l'écran d'accueil de WinLogon.

Le paramètre Dontdisplaylastusername de Microsoft Windows est analogue au paramètre DisplayLastLogin de gdmlogin.

Page générée en 0.195 seconde(s) - site hébergé chez Contabo
Ce site fait l'objet d'une déclaration à la CNIL sous le numéro de dossier 1037632
A propos - Informations légales - Signaler un contenu
Version anglaise | Version allemande | Version espagnole | Version portugaise