Comment modifier la stratégie d'exécution de PowerShell dans Windows 10
Par défaut, PowerShell restreint l'exécution de scripts sur les PC des utilisateurs finaux. Ce paramètre est bon d'un point de vue sécurité. Cependant, si vous utilisez beaucoup de scripts que vous avez téléchargés ou codés par vous-même, cela peut être très ennuyeux. Dans cet article, nous verrons comment modifier la stratégie d'exécution par défaut pour les scripts PowerShell dans Windows 10.
Windows PowerShell a quatre stratégies d'exécution différentes :
- Restreint - Aucun script ne peut être exécuté. Windows PowerShell ne peut être utilisé qu'en mode interactif.
- AllSigned - Seuls les scripts signés par un éditeur de confiance peuvent être exécutés.
- RemoteSigned - Les scripts téléchargés doivent être signés par un éditeur de confiance avant de pouvoir être exécutés.
- Sans restriction - Aucune restriction; tous les scripts Windows PowerShell peuvent être exécutés.
- Non défini - Aucune stratégie d'exécution n'a été définie.
Si la politique d'exécution n'est pas définie et configurée, elle s'affiche comme « Non définie ». Voici comment vous pouvez voir la valeur actuelle.
Comment voir la politique d'exécution de PowerShell
- Ouvrez PowerShell.
- Tapez ou copiez-collez la commande suivante et appuyez sur la touche Entrée:
Get-ExecutionPolicy -List
La commande affichera toutes les stratégies d'exécution. Comme vous pouvez le voir, il existe un certain nombre de portées pour lesquelles la politique d'exécution peut être définie. Il peut être défini globalement pour tous les utilisateurs, pour l'utilisateur actuel uniquement ou pour le processus actuel. La politique de processus actuelle a la priorité sur les paramètres de l'utilisateur actuel. La stratégie utilisateur actuelle remplace l'option globale. Garde ça en tête. Voyons maintenant comment modifier la stratégie d'exécution de script pour PowerShell.
Modifier la stratégie d'exécution de PowerShell pour un processus
- Ouvrir un invite de commande ou PowerShell.
- Lancez le fichier powershell.exe avec l'argument -ExecutionPolicy Unrestricted. Par exemple,
Powershell.exe -ExecutionPolicy Unrestricted -Fichier c:\data\test.ps1
Cela démarrera votre script en utilisant la politique d'exécution illimitée. Au lieu du script, vous pouvez démarrer une applet de commande ou ce que vous voulez. Au lieu de "Sans restriction", vous pouvez utiliser toute autre politique mentionnée ci-dessus.
Astuce: pour une console PowerShell ouverte, vous pouvez changer de stratégie d'exécution à l'aide de la commande :
Set-ExecutionPolicy Unrestricted -Scope Process
Il restera actif jusqu'à ce que vous fermiez la fenêtre PowerShell actuelle.
Modifier la stratégie d'exécution de PowerShell pour l'utilisateur actuel
- Ouvrez PowerShell.
- Tapez ou copiez-collez la commande suivante et appuyez sur la touche Entrée:
Set-ExecutionPolicy Unrestricted -Scope CurrentUser
Set-ExecutionPolicy Unrestricted -Scope CurrentUser -Force
Lorsque la politique d'exécution est définie pour l'utilisateur actuel, elle remplacera la portée "LocalMachine". Encore une fois, pour un processus, vous pouvez le remplacer pour l'instance PowerShell actuelle comme décrit ci-dessus.
Modifier la stratégie globale d'exécution de PowerShell
Cette politique d'exécution s'applique à l'ordinateur, ce qui signifie qu'elle est effective pour les comptes d'utilisateurs qui n'ont pas de politique d'exécution appliquée individuellement. Avec les paramètres par défaut, il sera appliqué à tous les comptes d'utilisateurs.
Pour modifier la stratégie d'exécution de PowerShell dans Windows 10, procédez comme suit.
- Ouvrez PowerShell en tant qu'administrateur.
- Exécutez la commande suivante:
Set-ExecutionPolicy Unrestricted -Scope LocalMachine
Vous avez terminé.
Modifier la stratégie d'exécution de PowerShell avec un ajustement du registre
Il est possible de modifier la politique d'exécution avec un ajustement du Registre pour l'utilisateur actuel et l'ordinateur. Voici comment cela peut être fait.
- Ouvrez le Éditeur de registre.
- Pour modifier la politique d'exécution pour l'utilisateur actuel, accédez à.
HKEY_CURRENT_USER\SOFTWARE\Microsoft\PowerShell\1\ShellIds\Microsoft. PowerShell
- Définissez la valeur de chaîne ExecutionPolicy sur l'une des valeurs suivantes: Restricted, AllSigned, RemoteSigned, Unrestricted, Undefined.
- Pour modifier la stratégie d'exécution pour la portée LocalMachine, accédez à.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\1\ShellIds\Microsoft. PowerShell
- Définissez la valeur de chaîne ExecutionPolicy sur l'une des valeurs suivantes: Restricted, AllSigned, RemoteSigned, Unrestricted, Undefined.
Astuce: Découvrez comment accéder à une clé de registre en un clic. Aussi, vous pouvez basculer rapidement entre HKCU et HKLM dans l'éditeur de registre de Windows 10.
C'est ça.