La meilleure façon de savoir si un utilisateur a des privilèges d'administrateur à partir d'un script VBScript
J'ai besoin de vérifier que l'utilisateur qui exécute le script dispose des privilèges d'administrateur sur la machine.
J'ai précisé à l'utilisateur qui exécute le script parce que le script pourrait avoir été exécuté avec un utilisateur autre que celui connecté à l'aide de quelque chose de semblable à "Runas".
@Javier: les Deux solutions fonctionnent sur un PC avec une version anglaise de Windows installé, mais pas si l'installation est dans une autre langue. C'est parce que les Administrateurs de groupe n'existe pas, le nom est différent, par exemple en espagnol. J'ai besoin de la solution de travail dans toutes les configurations.
OriginalL'auteur Javier De Pedro | 2008-11-19
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser le script si vous voulez voir si l'utilisateur est un administrateur
Je ne suis pas sûr de savoir comment y faire face quand le script est exécuté avec "Runas" j'ai peur.
Cela ne fonctionne pas si l'utilisateur n'est pas directement dans le groupe des Administrateurs, mais par le biais de certains appartenance à un groupe.
OriginalL'auteur Tim C
En faisant cela, vous rompre les scénarios où l'utilisateur dispose de la privs pour votre script, mais il n'appartient pas aux Administrateurs. Au lieu de vérifier l'appartenance à un groupe, vérifiez les compétences spécifiques dont vous avez besoin.
OriginalL'auteur Jay Bazuzi
Que sur la recherche pour "\\computername\Admin$\system32"?
OriginalL'auteur JohnZaj
J'ai essayé de Tim C de la solution sur un Windows 7 sur mon réseau d'entreprise où je n'ai fait disposer des droits d'administrateur. Mais ce que montre mon utilisateur comme n'ayant pas les droits admin.
Au lieu de cela, j'ai utilisé un hackier méthode, que l'appel à la "défragmentation" dans l'invite de cmd nécessite un accès administrateur. Alors qu'il travaille, méfiez-vous que XP et 7 (et éventuellement les futures versions de Windows) diffèrent dans le code de retour. Il peut y avoir plus de choix cohérents de défragmentation, mais il fonctionne pour l'instant.
OriginalL'auteur Dss
Je sais que ce fil est très ancienne et a marqué une réponse, mais la réponse n'est pas vraiment à donner ce que l'OP a demandé à propos.
Pour quelqu'un d'autre recherche et de trouver cette page, voici une alternative qui ne se rapport fondé sur les droits de ne pas l'appartenance à un groupe, de sorte Runas Administrateur montre des droits d'admin comme Vrai.
OriginalL'auteur RLH
Cet article a un joli morceau de code sur la manière d'énumérer les membres d'un groupe (copié ici pour plus de commodité et édité pour ne pas utiliser l'adresse de courrier électronique):
Vous pouvez ensuite écrire une fonction pour voir si un utilisateur est dans la liste...
...et de l'appeler comme ceci:
OriginalL'auteur Patrick Cuff
Encore une autre rapide n sale méthode. De retour <> 0 Si IsNotAdmin
OriginalL'auteur spudw
Utilisateur peut ne pas être dans le groupe administrateur local. Par exemple - admins du domaine.
Contrôle de compte d'utilisateur bloque généralement d'un accès administrateur du registre, des actions e.t.c. même pour les administrateurs(onl y manuel "exécuter en tant qu'administrateur" obtient de droit)...
Voici mes fous:
OriginalL'auteur OlegSu
OriginalL'auteur lygstate
À l'aide de "localhost" au lieu du vrai nom d'hôte augmente l'exécution du script sur 10x!
Mon code final est:
Ce script renvoie le code de sortie 0 si l'utilisateur courant est un compte administrateur local.
Utilisation: cscript.exe get_admin_status.vbs
OriginalL'auteur Stefan Bohlein