Question Run As et Start-process

Plus d'informations
il y a 15 ans 10 mois #6887 par Arthur
Run As et Start-process a été créé par Arthur
Bonjour,
Voilà en ce moment je suis en train de coder des scripts qui sont exécutés par un serveur apache en php....(:P).

Seulement voilà certains de mes scripts nécessitent d'être lancés avec les droits d'admin du domaine.Seulement voilà le serveur apache lance les script en tant que : \"nt authority\system\" enfin c'est ce que me donne \"whoami.exe\" sur ma page web.

Je suis parti donc à la recherche d'une sorte de \"sudo\" pour Powershell, et j'ai trouvé un truc très intéressant: blogs.msdn.com/powershell/archive/2009/0...wershell-script.aspx

Bon la vrai commande est :

[code:1]Start-Process \"$psHome\powershell.exe\" -Verb Runas -Arguments '-command \"get-childitem\"'[/code:1]

Seulement voilà je voudrai utiliser le \"runas\" avec un \"objet credential\"(cf : get-credential)
Il faudrait un truc du genre \"-Verb Runas $cred\"
Car sinon la commande ne peut pas fonctionner avec Apache.
Et malheureusement je n'ai toujours pas trouvé de solutions à mon problème.
Donc je voulais savoir si quelqu'un avait une idée.

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 15 ans 10 mois #6893 par Laurent Dardenne
Réponse de Laurent Dardenne sur le sujet Re:Run As et Start-process
Salut,
bilbao écrit:

Il faudrait un truc du genre \"-Verb Runas $cred\"

Sauf erreur de ma part, le verb runas ne nécessite pas de credential puisse que son comportement est plus proche de \"exécuter en tant que\" à partir du compte en cours.
Ta demande est plutot lié au comportement \"exécuter avec les droits de\" et ce à partir d'un autre compte.
As-tu essayé le paramètre Credential ?

Pour info ce paramètre déclare un alias nommé RunAs :
[code:1]
[Parameter(ParameterSetName=\"Default\"«»), Credential, ValidateNotNullOrEmpty, Alias(new string[] { \"RunAs\" })]
public PSCredential Credential
[/code:1]<br><br>Message édité par: Laurent Dardenne, à: 19/05/10 10:09

Tutoriels PowerShell

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 15 ans 10 mois #6894 par Laurent Dardenne
Réponse de Laurent Dardenne sur le sujet Re:Run As et Start-process
Tu aussi consulter ce post .

Tutoriels PowerShell

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 15 ans 10 mois #6895 par Arthur
Réponse de Arthur sur le sujet Re:Run As et Start-process
Bon en effet hier soir probablement due à la fatigue,j'avais pas vu le paramètre -credential, mais en même temps le man de start-process est bizarre on dirait qu'il existe 2 start-process .Un coup il faut mette le paramètre \&quot;-ArgumentList\&quot; un coup faut mettre \&quot;-Arguments\&quot;. :pinch:

Enfin bon c'est pas le problème, le script marche nickel quand je le lance à partir d'un utilisateur \&quot;standard\&quot; mais quand Apache le lance j'ai : \&quot;Access Denied\&quot;,sinon ce matin en réfléchissant j'ai cherché à contourner le problème en utilisant un start-job avec les credentials (J'ai la même erreur que avec start-process) et aussi avec un invoke-command sur 127.0.0.1(:P ) et la par contre j'ai une autre erreur sur mes commandes [LDAP](Voir le fichier en pièce jointe)

\&quot;Exception calling \&quot;FindALL\&quot; with 0 Argument(s) : An operations error occured.\&quot;


La pièce jointe Liste_grp_appartient_mb.ps1 est absente ou indisponible



EDIT:En effet j'avais déjà regardé les \&quot;PowerToys\&quot; Mais je ne voit toujours pas comment Apache peut rentrer le mdp.

EDIT2: Bon J'ai tester la commande :

[code:1] Start-Process \&quot;$PSHOME\powershell.exe\&quot; -Credential $credentials -Argumentlist '-command \&quot; Get-Process\&quot;' [/code:1]

Avec Apache :
Sans le paramètre Credential la commande marche
Avec j'ai access denied
Avec un utilisateur \&quot;normal\&quot; les 2 cas marchent.<br><br>Message édité par: bilbao, à: 19/05/10 11:05

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 15 ans 10 mois #6897 par Laurent Dardenne
Réponse de Laurent Dardenne sur le sujet Re:Run As et Start-process
bilbao écrit:

Un coup il faut mette le paramètre \&quot;-ArgumentList\&quot; un coup faut mettre \&quot;-Arguments\&quot;. :pinch:

Tu dois avoir PSCX d'installé :
[code:1]gcm start-p*
help Microsoft.PowerShell.Management\start-process -full[/code:1]
bilbao écrit:

Mais je ne voit toujours pas comment Apache peut rentrer le mdp.

Il me semble avoir lu un post qui permet ce genre de manip, mais je n'ai pas gardé le lien :unsure:
bilbao écrit:

Avec j'ai access denied

ça commence à te faire une belle collection :P
Là je séche, le fait que ton process soit exécuté à partir du contexte d'un service est peut être en cause ? De plus ADSI est du 'monde' COM :whistle:, ce qui ajoute une couche.

Peut être faut-il dans un premier temps rechercher des infos sur des forum PHP/Apache ?

Tutoriels PowerShell

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 15 ans 10 mois #6898 par Arthur
Réponse de Arthur sur le sujet Re:Run As et Start-process
Bon au final un collègue à une solution qui pourrait marcher je vais test. :P
Il propose de créer une tache planifié sur un script vide....mais avec les !! droits d'admin !! (:evil: :evil: :evil: :evil: :evil: )Il me suffit après de faire un petit set-content et de lancer la tache pour que ca marche ( en théorie :P )
Sinon on a une autre piste avec les comptes de services mais elle est plus compliqué vus que j'ai jamais utilisé les comptes de services. :blush:
Je vais donc test la premier solution et je vous direz si ca marche. :laugh:<br><br>Message édité par: bilbao, à: 19/05/10 11:49

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.052 secondes
Propulsé par Kunena