OVH Cloud OVH Cloud

Connaitre le privilege d'un utilisateur sous windows NT/2000/XP

5 réponses
Avatar
Olivier
Bonjour,

Comment peut-on connaitre les privileges d'un utilisateur sous WIndows
NT/2000/XP
, (s'il est un utilisateur standard, utilisateur avec privileges ,
administrateur) en Visual C++.

Merci,

5 réponses

Avatar
Christian ASTOR
Olivier wrote:

Comment peut-on connaitre les privileges d'un utilisateur sous WIndows
NT/2000/XP
, (s'il est un utilisateur standard, utilisateur avec privileges ,
administrateur) en Visual C++.



NetUserGetGroups(), NetUserGetlocalGroups(), etc ..
Répondu par Patrick le mois dernier : http://tinyurl.com/48msf
Avatar
Jean-Claude BELLAMY
Dans le message news:cuclqs$h2c$ ,
Olivier s'est ainsi exprimé:

Bonjour,

Comment peut-on connaitre les privileges d'un utilisateur sous WIndows
NT/2000/XP
, (s'il est un utilisateur standard, utilisateur avec privileges ,
administrateur) en Visual C++.




Il existe plusieurs méthodes, mais celle que je privilégie (et que je trouve
la plus simple) consiste à faire appel à la fonction "NetUserGetInfo" de la
dll "NetAPI32.dll"
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/netmgmt/netmgmt/netusergetinfo.asp

NET_API_STATUS NetUserGetInfo(
LPCWSTR servername,
LPCWSTR username,
DWORD level,
LPBYTE* bufptr
);

Avec un "level" égal à 1, donc en utilisant une structure pour bufptr de
type USER_INFO_1 , on récupère le niveau de privilèges dans le champ
"usri1_priv" (un DWORD) qui vaut, suivant les cas :
USER_PRIV_GUEST
-> Compte invité
USER_PRIV_USER
-> Compte utilisateur lambda
USER_PRIV_ADMIN
-> Compte administrateur


--
May the Force be with You!
La Connaissance s'accroît quand on la partage
----------------------------------------------------------
Jean-Claude BELLAMY [MVP] - http://www.bellamyjc.org
*
Avatar
Olivier
Merci

"Christian ASTOR" wrote in message
news:4209ded5$0$5214$
Olivier wrote:

> Comment peut-on connaitre les privileges d'un utilisateur sous WIndows
> NT/2000/XP
> , (s'il est un utilisateur standard, utilisateur avec privileges ,
> administrateur) en Visual C++.

NetUserGetGroups(), NetUserGetlocalGroups(), etc ..
Répondu par Patrick le mois dernier : http://tinyurl.com/48msf


Avatar
Christian ASTOR
Olivier wrote:

Merci



Mais la meilleure solution me semble celle donnée juste après par
Jean-Claude...
Moins il y a de code, meilleur c'est...
Avatar
Aurélien REGAT-BARREL
> > Comment peut-on connaitre les privileges d'un utilisateur sous WIndows
> NT/2000/XP
> , (s'il est un utilisateur standard, utilisateur avec privileges ,
> administrateur) en Visual C++.


Il existe plusieurs méthodes, mais celle que je privilégie (et que je


trouve
la plus simple) consiste à faire appel à la fonction "NetUserGetInfo" de


la
dll "NetAPI32.dll"



Ca dépend de ce qu'on veut savoir. Faut pas trop faire de suppositions sur
les privilèges des comptes à mon avis. Rien n'empêche un compte user limité
d'avoir plus de privilèges que le défaut, et inversement. Par exemple en
user limité je me suis rajouté le privilège de modifier l'heure du PC
(SeSystemtimePrivilege).

--
Aurélien REGAT-BARREL