Page 1 sur 1
[..] Modifier registre distant avec authentification (RunAs)
Posté : jeu. 26 sept. 2013 21:15
par davzell
Salut a tous,
voila je débute en autoit et je cherche a faire une modifiacation du régistre d'un controleur de domaine en m'authentifiant avant en administrateur
runas("Administrateur","nom de machine ou domaine","mot de passe",0,RegRead("\\nom du poste\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion", "ProgramFilesDir"
MsgBox(0,0,$info)
ca ne marche pas mais je ne sais pas trop pourquoi
si quelqu'un peut me donner un coup de main
merci d'avance
Re: [S] Modifier registre distant avec authentification (Run
Posté : jeu. 26 sept. 2013 22:29
par jguinch
Je répète ce que je viens d'écrire dans ton autre post : il faut impérativement lire la doc et essayer de comprendre les exemples.
Le cinquième paramètre de RunAs doit être un programme, pas une fonction.
Edit :
avant qu'un modérateur ne le jette, tu devrais modifier le titre de ton topic pour qu'il respecte les règles Tlem s'en est chargé (sans faire de remarque en plus

...)
Re: [S] Modifier registre distant avec authentification (Run
Posté : jeu. 26 sept. 2013 23:01
par davzell
jguinch a écrit :Je répète ce que je viens d'écrire dans ton autre post : il faut impérativement lire la doc et essayer de comprendre les exemples.
Le quatrième paramètre de RunAs doit être un programme, pas une fonction.
Edit :
avant qu'un modérateur ne le jette, tu devrais modifier le titre de ton topic pour qu'il respecte les règles Tlem s'en est chargé (sans faire de remarque en plus

...)
je vérifierai demain le code que j'ai réussi a faire marcher au taf, mais si je dis pas de conneries le regread fonctionne.
J'ai trouvé quand faite le code ne marchait pas sur mon pc car le service windows pour éditer le registre distant été arrêté.
Re: [S] Modifier registre distant avec authentification (Run
Posté : ven. 27 sept. 2013 16:19
par davzell
jguinch a écrit :Je répète ce que je viens d'écrire dans ton autre post : il faut impérativement lire la doc et essayer de comprendre les exemples.
Le cinquième paramètre de RunAs doit être un programme, pas une fonction.
Edit :
avant qu'un modérateur ne le jette, tu devrais modifier le titre de ton topic pour qu'il respecte les règles Tlem s'en est chargé (sans faire de remarque en plus

...)
bon effectivement le runas ne marche pas avec regwrite
la commande marche mais peu importe ce que je marque en mot de passe par exemple.
Du coup a part utiliser runas avec un second *.exe ou la commande @comspec pour le faire en dos je n'ai pas de solution ?
Pour que ce soit le plus simple possible je voudrais avoir un seul *.exe.
Re: [..] Modifier registre distant avec authentification (Ru
Posté : ven. 27 sept. 2013 16:25
par jguinch
Tu peux faire un script qui se lance lui-même en administrateur si l'utilisateur n'a pas les droits :
► Afficher le texte
Code : Tout sélectionner
_RunAsAdmin()
; RegWrite....
; et toute la suite sera exécutée avec les droits admin
Func _RunAsAdmin()
If IsAdmin() Then Return 1
RunAsWait("administrateur", @ComputerName, "P@$$w0rd", 0, @ScriptFullPath, @ScriptDir)
Exit
EndFunc
Re: [..] Modifier registre distant avec authentification (Ru
Posté : ven. 27 sept. 2013 20:00
par davzell
ok j'en avais trouvé un dans le même genre
Code : Tout sélectionner
Local $sUserName = "Administrateur"
Local $sPassword = "P@ssw0rd"
If not IsAdmin() Then
RunAs($sUserName, @ComputerName, $sPassword, 0, @ScriptFullPath, @ScriptDir)
Exit
EndIf
; La suite du code comme si on est Admin.
c'est le @ScriptFullPath et @ScriptDir que je maîtrise pas
Edit; par contre c'est un registre d'un poste distant que je tente de modifier, je sais pas si ça fonctionne aussi du coup ?
en gros je veux m'authentifier sur le domaine en tant qu'admin avant de manipuler le registre
Re: [..] Modifier registre distant avec authentification (Ru
Posté : sam. 28 sept. 2013 00:29
par leonick12
salut moi j'ai trouver une astuce pour ca, tu creer une tache dans windows en metant l'autorisation maxi et apres tu mets un raccourcis avec la ligne de commande qui demarre ta tache et le raccoucis que tu demarre dans autoit
suivant les windows pour les taches : menu demarrer/outils administration/planificateur de taches
choisir 'creer une tache' ne pas choisir 'creer une tache de base'
et surtout cocher 'executer avec les autorisations maximales
voila la commande :
la commande autoit
ca peut toujours servir.
Re: [..] Modifier registre distant avec authentification (Ru
Posté : dim. 29 sept. 2013 21:47
par davzell
du coup je voulais faire un truc du genre pour faire un runas avec modification de registre mais ca ne marche pas non plus.
une idée ?
Code : Tout sélectionner
$username = davzell
$domain = domain
$password = test
RunAs($username, $domain, $password, 0, @ComSpec & " /k reg add \\davzell-pc\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\explorer /v NoTrayContextMenu /t REG_DWORD /d 1","",@SW_HIDE)
Re: [..] Modifier registre distant avec authentification (Ru
Posté : dim. 29 sept. 2013 21:59
par Tlem
Les balises de code SVP.
Re: [..] Modifier registre distant avec authentification (Ru
Posté : dim. 29 sept. 2013 22:14
par davzell
Tlem a écrit :Les balises de code SVP.
sorry
Re: [..] Modifier registre distant avec authentification (Ru
Posté : dim. 29 sept. 2013 22:32
par jguinch
Dans ton code, tu utilises
/k pour que cmd ne se ferme pas, et
@SW_HIDE pour ne pas afficher la fenêtre :
Code : Tout sélectionner
RunAs($username, $domain, $password, 0, @ComSpec & "[b] [color=#FF0000]/k[/color][/b] reg add \\davzell-pc\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\explorer /v NoTrayContextMenu /t REG_DWORD /d 1","",[b][color=#FF0000]@SW_HIDE[/color][/b])
Du coup, du dois avoir un cmd.exe qui reste ouvert...
Essai d'enlever @SW_HIDE pour voir ce que la commande de retourne.
Tu peux aussi ajouter /f dans la commande reg pour forcer l'écriture (c'est peut-être ça qui ne va pas)
Re: [..] Modifier registre distant avec authentification (Ru
Posté : dim. 29 sept. 2013 23:15
par davzell
Ben la commande fonction correctement si je lance le script d'un compte administrateur.
Par Contre depuis un simple utilisateur ça ne passe pas. Donc je pense que c'est au niveau du runas qu'il y'a quelque chose qui ne va pas
Re: [..] Modifier registre distant avec authentification (Ru
Posté : lun. 30 sept. 2013 08:40
par jguinch
Essai d'enlever @SW_HIDE pour voir ce que la commande de retourne.
Re: [..] Modifier registre distant avec authentification (Ru
Posté : lun. 30 sept. 2013 09:10
par davzell
j'ai essayé et la fenêtre de CMD ne s'ouvre même pas
si je lance en session admin c'est ok la clef est ajouté et la fenêtre cmd reste ouverte
Re: [..] Modifier registre distant avec authentification (Ru
Posté : lun. 30 sept. 2013 09:39
par jguinch
Tu es sûr de tes valeurs $username, $domain, $password ?
Re: [..] Modifier registre distant avec authentification (Ru
Posté : lun. 30 sept. 2013 10:44
par davzell
oui je suis sur et même en supposant qu'ils soient faux, je devrais avoir la fenêtre dos qui reste affiché me disant "accès refusé" comme quand je fais le test sans mettre d'identifiants non ?
Re: [..] Modifier registre distant avec authentification (Ru
Posté : ven. 08 nov. 2013 12:15
par davzell
bon j'avais réussi a me débrouiller pour la commande et je rencontre un problème un peu différent maintenant.
j'ai fais ce code pour récupérer le chemin d'une appli dans le registre distant d'un poste
Code : Tout sélectionner
$path = RegRead("\\" & $NomPC & "\HKLM\SYSTEM\CurrentControlSet\Services\path", "ImagePath")
$var = _StringBetween($path, '\', 'w')
MsgBox(0, '', $var[0])
ca marche correctement sauf pour les postes ou il faut que je m'authentifie
j'ai donc voulu passer par la commande reg query au lieu de regread qui fonctionne
Code : Tout sélectionner
$path = RunAs($user, $Domain, $mdpPC, 0, @ComSpec & " /k reg query \\" & $NomPC & "\HKLM\SYSTEM\CurrentControlSet\Services\uvnc_service /v ImagePath")
par contre est ce qu'il y a un moyen de récupérer ce qu'il y a dans ma fenêtre dos pour le placer dans une variable et l'utiliser dans le reste du script ?
merci