Récupérer le SID d'un utilisateur hors domaine.

cs_sylvain.r Messages postés 3 Date d'inscription dimanche 5 octobre 2003 Statut Membre Dernière intervention 21 avril 2005 - 21 avril 2005 à 14:05
cs_sylvain.r Messages postés 3 Date d'inscription dimanche 5 octobre 2003 Statut Membre Dernière intervention 21 avril 2005 - 21 avril 2005 à 14:57
<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />Bonjour.



Je souhaiterai récupérer le SID d’un utilisateur avec un script vbs. Jusque là, tout vas bien.


L’utilisateur est itinérant et sert d’un portable avec un client WinXp Pro.


Le compte utilisateur est un compte de domaine, ajouté au groupe Administrateur Local du portable.


Mon problème est que mon script fonctionne bien si l’utilisateur est logué sur un réseau, mais si il ouvre une session hors réseau, là, ça fonctionne plus.





Mon script :
*******************************
dim hostname, logname, domaine, user



Set WSHNetwork = Wscript.CreateObject("Wscript.Network")



logname = WSHNetwork.UserName
hostname = WSHNetwork.ComputerName
domaine = WSHNetwork.UserDomain



strComputer = ""&hostname&""
user = ""

Set wmi = GetObject("winmgmts:\" & strComputer & "\root\cimv2")


wql = "Select SID from Win32_UserAccount Where Name='" & logname &"' AND Domain = '"& domaine &"'"

Set result = wmi.ExecQuery(wql)
For each instance in result
user = instance.SID


MsgBox "SID: " & user
Next
*************************************


Est-ce que quelqu’un a une idée Je sèche lamentablement



Merci

2 réponses

crenaud76 Messages postés 4172 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 9 juin 2006 28
21 avril 2005 à 14:11
As-tu essayé de remplacer le nom de domaine par le nom de l'ordinateur dasn ta requete WMI ? Car en étant logué avec un compte local à la machine, un utilisateur à pour domaine, le nom de la machine !

wql = "Select SID from Win32_UserAccount Where Name='" & logname &"' AND Domain = '"& hostname &"'"

Christophe R
0
cs_sylvain.r Messages postés 3 Date d'inscription dimanche 5 octobre 2003 Statut Membre Dernière intervention 21 avril 2005
21 avril 2005 à 14:57
oui, dans le doute, je viens de réessayer, même résultats, et aussi en essayant sans le domaine :

wql = "Select SID from Win32_UserAccount Where Name='" & logname &"'".<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" />

merci
0
Rejoignez-nous