donner droit exécution uniquement - Win NT/2K/XP - Windows & Software
Marsh Posté le 10-08-2007 à 16:14:08
Dslé de pas avoir été assez clair : le script est en vbs mais le problère va etre le meme (enfin je pense)
Autrement donc les postes client sont sur XP pro et le script se trouve sur un lecteur réseau (serveur 2003).
Marsh Posté le 10-08-2007 à 16:24:07
Voilà une procédure pour crypter le mot de passe admin dans un script en VB:
Prérequis:
AutoIt (a télécharger)
Fichiers lsrunase.exe et authscript.au3 (a télécharger)
Fichier lsencrypt.exe en cas de nouveau mot de passe à crypter.
Script à déployer (nécessitant les pouvoirs admin) compilé
Contenu du script authscript.au3:
AutoItSetOption ( "RunErrorsFatal", 0 )
Permet au programme de continuer en cas d’erreurs des fonctions RUN.
Nécessaire car une telle erreur peut arrêter le programme et faire apparaître le code.
;**** Variables ****
$TEMP=envget("WINDIR" )&"\temp"
$PASSWORD="zLJ8gOJrj/2="
;$PASSWORD2="51pagYgMqsc="
;*******************
$PASSWORD et $PASSWORD2 : Mot de passe Admin1 et Admin2 crypté grâce a lsencrypt.exe
fileinstall("C:\temp\runas.exe",$TEMP&"\runas.exe",1)
fileinstall("C:\temp\*****script_a_inserer*****.exe",$TEMP&"\*****script_a_inserer*****.exe",1)
Commande fileinstall : sert a « packager » un programme extérieur et à l’extraire en local. Le premier paramètre indique le chemin du fichier a packager au moment de la compilation, le deuxième indique le dossier d’extraction sur le poste incriminé, et le 3e paramètre (1) provoque l’écrasement en cas de fichier avec le même nom.
run_adm("Admin1",$PASSWORD,'cmd /c start /min '&$temp&'\*****script_a_inserer*****.exe')
sleep (500)
;run_adm("Admin2",$PASSWORD2,'cmd /c start /min '&$temp&'\*****script_a_inserer*****.exe')
;sleep (500)
Lancement de la fonction run_adm expliquée plus bas.
FileDelete($TEMP&"\runas.exe" )
FileDelete($TEMP&"\*****script_a_inserer*****.exe" )
Suppression des fichiers résiduels
func run_adm($user,$PASS,$cmd)
RunWait('cmd /c '&$TEMP&'\runas.exe /user:'&$user&' /password:'&$PASS&' /domain:%COMPUTERNAME% /command:"'&$cmd&'" /runpath:c:\ ',"",@SW_disable)
EndFunc
Fonction lancant le programme runas.exe (vrai nom LSrunase), extrait sur la machine, qui réalise lui même l’authentification. Nécessite 3 paramètres : le login, le mot de passe et la commande à lancer.
Utilisation du script:
Pour utiliser ce script, il suffit de remplacer toutes les occurrences de
*****script_a_inserer*****.exe
Par le nom du programme nécessitant les pouvoirs administrateurs
Il faut ensuite placer ce dernier ainsi que le fichier lsrunase.exe renommé en runas.exe (pour plus de sécutrité) dans le répertoire précisé au niveau de la commande fileinstall (en l’occurrence $TEMP, donc C:\winnt\temp ou C:\windows\temp) et lancer la compilation du script.
Marsh Posté le 15-08-2007 à 16:37:09
meci nono784... Je verrai ca lundi qd j'aurais terminé mes congés...
Personne n'a une autre idée avec les droits windows. Il existe bien la possibilité de donner les droits d'exécution mais il semble impossible de les donnés sans donner les droits de lecture.
S'il existe une autre solution plus simple a mettre en place je suis preneur...
Merci !!
Marsh Posté le 22-08-2007 à 15:33:38
Problème résolut :
http://www.f2ko.de/English/v2e/v2e.html
Je converti le fichier en exe avec mot de passe et ca c'est hyper simple et efficace.
Merci quand meme nono784...
@+
Marsh Posté le 10-08-2007 à 15:26:51
Bonjour a tous,
J'ai un script que je souhaiterais faire exécuter par l'ensemble de la boite ou je travail. Le problème c'est que ce script contient le mot de passe AD pour faire une manip... Je souhaiterais donc que l'accès soit totale pour moi et uniquement exécution pour le reste des personne. (genre 711 en Unix)
J'ai regardé mais je n'arrive pas a donné les droits de facon satisfaisante...
Merci d'avance..