10
votes

Comment exécuter des scripts PowerShell sans droits d'administrateur?

Si j'essaie de changer la politique d'exécution, je reçois un message qui dit que je ne peux pas modifier le registre car je ne suis pas administrateur.

On dirait que cela devrait être possible, car je peux exécuter des fichiers par lots et d'autres programmes .exe et .com.


0 commentaires

5 Réponses :


16
votes

Vous pouvez essayer de définir la stratégie du processus lui-même.

powershell.exe -executionpassepoly bypass


2 commentaires

Des 3 techniques que j'ai vues, c'est le plus simple. Fonctionne à la maison, travaille au bureau.


C'est ce que je cherchais.



2
votes

Que diriez-vous de

$script = Get-Content .\test.ps1
Invoke-Expression $script


0 commentaires

18
votes

Si votre administrateur de domaine ne l'a pas interdit, vous pouvez le faire:

Set-ExecutionPolicy -ExecutionPolicy Bypass -Scope Process


3 commentaires

Je ne saurais pas de quelle stratégie de groupe l'ensemble de l'administrateur au bureau. Je me demande si la police arrête la technique d'expression invoke et la technique -CODEDCommand, qui permettent à la fois le contenu d'un fichier de script d'exécuter sans modifier la politique d'exécution.


Je ne penserais pas, mais je ne l'ai pas testé. Si PowerShell est activé, vous pouvez toujours "exécuter" un script en saisissant simplement la ligne de commande. L'objectif de la politique d'exécution n'est pas vraiment d'arrêter un utilisateur déterminé, il est d'empêcher un utilisateur non au courant d'exécuter accidentellement des scripts non approuvés.


Parfait, merci beaucoup :)



0
votes

La troisième technique que j'ai trouvée ailleurs sur Internet est d'utiliser

PowerShell.exe -EncodedCommand xxxxxxx

où xxxxxxx est le résultat de xxx

ref: http://dmitrysotnikov.wordpress.com/ 2008/06/27 / PowerShell-Script-in-A-Bat-File /


0 commentaires

2
votes

Si vous souhaitez avoir un moyen facile d'exécuter un script myscript.ps1 code> à partir du shell Windows, tout ce dont vous avez besoin est une batte runmyscript.bat code> avec le contenu suivant : xxx pré>

si simple, cela me fait me demander pourquoi vous ne pouvez pas simplement exécuter le PS1 en premier lieu, mais là, nous y allons. P>

une version générique qui invite à UserInput Pour taper le nom du script serait: P>

set /p filename="Type name of script here: "
type %filename% | powershell -


0 commentaires