L’ UAC (User Account Control, apparu avec VISTA)!!!
petit rappel pédagogique sur le sujet …
__________________________________
Depuis que Windows de la famille NT existe (1993), avec son système de
gestion de la sécurité des comptes, il y a 3 catégories d’utilisateurs
:
– les administrateurs
– les utilisateurs « lambdas »
– les invités
Pour faire simple :
– Les 1ers ont tous les droits (ou s’ils ne les ont pas,
ils peuvent se les faire attribuer)
– Les 2èmes ont des droits restreints
– Les 3èmes n’ont pour ainsi dire aucun droit
Par « droit » on entend :
– l’accès en lecture, en écriture, …, à des fichiers,
dossiers, clefs de la base de registres
– la possibilité d’effectuer certaines actions :
arrêt de l’ordinateur, création de sauvegarde,
création/suppression de comptes, modification
de paramètres du système (date et heure,…)
…
========================
Par ailleurs, depuis Windows VISTA, il est apparu un contrôle
supplémentaire :
« UAC » = User Account Control.
Ce système concerne UNIQUEMENT les comptes « administrateurs ».
Avec lui, par défaut, un compte appartenant au groupe des
administrateurs se voit attribuer des privilèges de compte « lambda » !
Cela afin d’éviter des étourderies (p.ex. suppression par erreur d’un
fichier du système) et/ou des « intrusions » (un logiciel d’origine
douteuse téléchargé sur Internet qui contient un virus ne pourra pas
effectuer de graves dégâts au système puisque limité dans son action)
Si ce compte administrateur a besoin absolument de recouvrer ses
privilèges d’administrateur, il pourra le faire mais uniquement en
répondant « Oui » à la demande d’élévation de privilèges qui s’affichera
à l’écran (donc VISIBLE, et non pas « en douce »).
NB: LE compte « Administrateur » (et lui seul, à savoir celui dont le
Security IDentifier se termine par « -500″) n’est pas soumis à ce
« dédoublement de personnalité » des comptes administrateurs.
Il reste TOUJOURS avec ses prérogatives d’administrateur (sauf si on
l’a volontairement rétrogradé au rang d’administrateur lambda)
========================
Quand on exécute un programme quelconque (exécutable, script, batch,
outil système, …), on le fait avec les « privilèges » attribués au
compte qui a ouvert la session en cours.
Cela peut suffire dans la plupart des cas, mais parfois il peut
survenir des blocages si le compte n’a pas suffisamment de privilèges.
C’est le cas lorsque le logiciel a besoin absolument de modifier
certains paramètres du système (p.ex. l’adresse IP de l’ordinateur), ou
d’écrire dans des zones « sensibles » (p.ex. le dossier
%systemroot%\system32, …) ou encore certains programmes
d’installation de logiciels.
C’est pourquoi il est possible d’exécuter un programme « En tant
qu’administrateur ».
Pour cela 2 cas de figure se présentent :
- le compte d’origine est un compte « lambda »
Il va y avoir changement temporaire de compte,
c’est à dire ouverture d’une AUTRE session sous
un AUTRE compte, lequel sera pris dans la liste
des comptes administrateurs (au choix de l’utilisateur
en cours), et pour lequel il faudra donc fournir
le mot de passe.
NB: cette 2ème session est exclusivement réservée
à l’exécution du programme concerné, et elle ne dure
que le temps d’exécution du programme.
- le compte d’origine est un compte « administrateur »
– Si on est sous un système antérieur à Vista,
ou si UAC a été désactivé, il n’y a rien de spécial à faire,
le programme va s’exécuter normalement, avec les privilèges
administrateur.
– Si on est sous Vista ou au-delà, avec UAC actif,
une boite de dialogue va s’ouvrir, demandant si on
est d’accord pour élever les privilèges à ceux
d’administrateur. Si on répond OUI, les privilèges
administrateurs vont être attribués le temps
de l’exécution du programme.
Une fois le programme exécuté, on revient à la situation initiale.
Si tu ne veux plus être dérangé par ces confirmations d’élévation de
privilèges, il faut paramétrer en conséquence UAC.
On peut le « calmer » un peu en faisant répondre OUI systématiquement et
automatiquement à la demande d’élévation de privilèges.
Cela correspond à la clef :
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\ConsentPromptBehaviorAdmin
0 -> Élévation des privilèges sans demander confirmation
1 -> Demande d’identification d’administrateur (nom + mot de passe)
2 -> Demande de consentement (accepter/refuser)
(valeur par défaut)
Tu peux aussi désactiver totalement UAC (et revenir à un fonctionnement
de style XP), MAIS dans ce cas il faut être sûr de ce que l’on fait!
(car tout processus pourra alors s’exécuter avec les privilèges admin,
donc si une « cochonnerieware » est lancée parce qu’on a cliqué sans
réfléchir sur un lien dans un spam, elle pourra s’exécuter!!!)
http://www.bellamyjc.org/fr/windowsvista.html#UAC
(cela concerne VISTA, mais c’est valable aussi sous Win7)
Enfin, une autre solution est d’ouvrir une session sous LE compte
« Administrateur ».
En effet, par défaut, ce compte ne reçoit qu’un seul jeton, celui des
privilèges admin.
MAIS :
– il est désactivé par défaut.
Pour l’activer, il suffit d’exécuter (sous un autre compte
admin) la commande :
NET USER Administrateur /ACTIVE:YES
– bien que désactivé, il peut ouvrir une session,
mais seulement en MODE SANS ÉCHEC, et à la condition
qu’il n’existe pas d’autre compte admin.
–
May the Force be with You!
La Connaissance s’accroît quand on la partage
———————————————————-
Jean-Claude BELLAMY [MVP Expert IT Pro]
http://www.bellamyjc.org ou http://jc.bellamy.free.fr