Powershell

L’exécution de script PowerShell est-elle désactivée ?

Par Francois , le 11 juin 2024 - 10 minutes de lecture
Partager cet article :

Lorsque l’on travaille avec des scripts PowerShell, il est essentiel de s’assurer que l’exécution de ces derniers n’est pas désactivée. En effet, cette fonctionnalité peut impacter directement le bon fonctionnement de vos tâches automatisées. Découvrez dans cet article comment vérifier si l’exécution de script PowerShell est activée ou désactivée sur votre système, et comment y remédier efficacement.

Vérifier les paramètres d’exécution de script PowerShell

Le PowerShell est un outil puissant pour l’automatisation et la gestion des systèmes sous Windows. Cependant, son exécution de script peut être désactivée par défaut pour des raisons de sécurité. Il est donc crucial de savoir comment vérifier et ajuster ces paramètres pour permettre ou restreindre l’exécution de scripts.

Pour vérifier les paramètres d’exécution des scripts PowerShell, ouvrez d’abord une fenêtre PowerShell avec des privilèges administratifs. Cela vous permet de modifier les paramètres de sécurité si nécessaire.

Utilisez la commande suivante pour connaître le niveau actuel des paramètres d’exécution :


Get-ExecutionPolicy

Cette commande renverra l’un des quatre paramètres suivants :

  • Restricted – Aucune script ne peut s’exécuter.
  • AllSigned – Tous les scripts doivent être signés par un éditeur de confiance.
  • RemoteSigned – Les scripts téléchargés doivent être signés par un éditeur de confiance.
  • Unrestricted – Les scripts peuvent s’exécuter sans restriction.

Pour changer le niveau des paramètres d’exécution, utilisez la commande suivante :


Set-ExecutionPolicy NouvelleValeur

Remplacez NouvelleValeur par l’un des niveaux de paramètres d’exécution souhaités. Par exemple, pour permettre l’exécution de tous les scripts, utilisez :


Set-ExecutionPolicy Unrestricted

Pour renforcer la sécurité, vous pouvez opter pour :


Set-ExecutionPolicy RemoteSigned

Vérifiez toujours les paramètres après la modification avec la commande Get-ExecutionPolicy pour vous assurer que les changements ont été appliqués correctement.

Vérifier les paramètres via le Gestionnaire de stratégie de groupe

Parfois, il est nécessaire de vérifier les paramètres d’exécution de script PowerShell pour s’assurer que tout fonctionne comme prévu. Cette opération peut être réalisée de plusieurs manières, notamment en utilisant ce que l’on appelle le Gestionnaire de stratégie de groupe.

Afin de vérifier les paramètres d’exécution de script PowerShell via une session PowerShell, vous pouvez ouvrir PowerShell et exécuter la commande suivante :



Get-ExecutionPolicy


La sortie de cette commande donnera le niveau de restriction actuellement appliqué, parmi les options suivantes :

  • Restricted – Aucun script ne peut être exécuté.
  • AllSigned – Seuls les scripts signés numériquement peuvent être exécutés.
  • RemoteSigned – Les scripts téléchargés doivent être signés par un éditeur de confiance.
  • Unrestricted – Aucun script n’est restreint.
  • Bypass – Exécute tous les scripts sans restriction.

Pour consulter et modifier les paramètres d’exécution de scripts PowerShell via le Gestionnaire de stratégie de groupe, suivez ces étapes :

  1. Ouvrez la Console de gestion des stratégies de groupe (gpmc.msc).
  2. Naviguez vers : Configuration de l’ordinateur -> Stratégies -> Modèles d’administration -> Composants Windows -> Windows PowerShell
  3. Cliquez sur l’option Activer l’exécution de scripts.
  4. Choisissez parmi les options disponibles pour définir le niveau de restriction souhaité.

En suivant ces étapes, vous pouvez efficacement ajuster et contrôler la manière dont les scripts PowerShell sont exécutés dans votre environnement Windows.

Vérifier les paramètres via l’Éditeur de stratégie de groupe locale

L’exécution de scripts PowerShell peut être restreinte ou désactivée pour des raisons de sécurité. Pour vérifier les paramètres d’exécution et s’assurer que tout est en ordre, plusieurs méthodes sont disponibles.

Pour commencer, ouvrez PowerShell avec les droits d’administrateur et exécutez la commande suivante :


Get-ExecutionPolicy

Cette commande retourne le niveau de la politique d’exécution actuellement appliqué. Les niveaux possibles sont :

  • Restricted : Aucune exécution de script n’est autorisée.
  • 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.
  • Unrestricted : Aucun script n’est restreint, mais une alerte s’affiche.
  • Bypass : Aucune restriction ni alerte.
  • Undefined : Aucune politique d’exécution n’est définie.

Pour modifier la politique d’exécution, utilisez la commande suivante :


Set-ExecutionPolicy RemoteSigned

Pour des environnements plus sécurisés, il est recommandé de vérifier et de configurer les paramètres via l’Éditeur de stratégie de groupe locale.

Accédez à l’Éditeur de stratégie de groupe locale en tapant


gpedit.msc

dans la barre de recherche de Windows et en appuyant sur Entrée.

Une fois l’Éditeur ouvert, suivez le chemin ci-dessous :


Configuration de l'ordinateur > Modèles d'administration > Composants Windows > Windows PowerShell

Ensuite, cherchez l’option Configurer les scripts PowerShell. Double-cliquez dessus pour modifier les paramètres. Sélectionnez les options appropriées en fonction de vos besoins en sécurité et de gestion des scripts.

Le script PowerShell est activé
Le script PowerShell est désactivé
  • Oui 👎🏽
    • Les scripts PowerShell ne peuvent pas être exécutés sur le système
    • La sécurité est renforcée, mais certaines fonctionnalités peuvent être limitées

  • Les scripts PowerShell ne peuvent pas être exécutés sur le système
  • La sécurité est renforcée, mais certaines fonctionnalités peuvent être limitées
  • Non 👍🏽
    • Les scripts PowerShell peuvent être exécutés normalement
    • Toutes les fonctionnalités sont disponibles, mais il peut y avoir des risques de sécurité

  • Les scripts PowerShell peuvent être exécutés normalement
  • Toutes les fonctionnalités sont disponibles, mais il peut y avoir des risques de sécurité
  • Les scripts PowerShell ne peuvent pas être exécutés sur le système
  • La sécurité est renforcée, mais certaines fonctionnalités peuvent être limitées
  • Les scripts PowerShell peuvent être exécutés normalement
  • Toutes les fonctionnalités sont disponibles, mais il peut y avoir des risques de sécurité

Activer l’exécution de script PowerShell

Pour de nombreuses tâches d’administration système, le PowerShell est un outil incontournable. Toutefois, par défaut, l’exécution de scripts PowerShell peut être désactivée sur certains systèmes pour des raisons de sécurité. Ci-dessous, nous verrons comment vérifier et activer l’exécution de scripts PowerShell.

Pour commencer, ouvrez une fenêtre PowerShell en mode administrateur. Vous pouvez le faire en recherchant “PowerShell” dans le menu Démarrer, puis en faisant un clic droit et en sélectionnant “Exécuter en tant qu’administrateur”.

Ensuite, utilisez la commande suivante pour vérifier la politique d’exécution actuelle :


Get-ExecutionPolicy

Les valeurs possibles sont : Restricted, AllSigned, RemoteSigned, Unrestricted, Bypass, Undefined. Si la valeur est “Restricted”, cela signifie que l’exécution des scripts est désactivée.

Pour activer l’exécution de script PowerShell, utilisez l’une des commandes suivantes selon le niveau de sécurité souhaité :

  • AllSigned : Permet uniquement les scripts signés de s’exécuter. Utilisez la commande :
    Set-ExecutionPolicy AllSigned
  • RemoteSigned : Permet les scripts locaux non signés et les scripts non locaux s’ils sont signés. Utilisez la commande :
    Set-ExecutionPolicy RemoteSigned
  • Unrestricted : Permet tous les scripts de s’exécuter, mais affiche un avertissement pour les scripts téléchargés. Utilisez la commande :
    Set-ExecutionPolicy Unrestricted
  • Bypass : Aucun processus ne bloque l’exécution des scripts. Utilisez la commande :
    Set-ExecutionPolicy Bypass

Pour des raisons de sécurité, il est recommandé d’éviter d’utiliser “Unrestricted” ou “Bypass” sauf si c’est absolument nécessaire.

Enfin, après avoir appliqué la nouvelle politique, vous pouvez vérifier à nouveau la configuration avec :


Get-ExecutionPolicy

Cela vous permet de vous assurer que la politique est définie correctement.

Activer l’exécution de script pour l’utilisateur actuel

Si vous avez des difficultés à exécuter un script PowerShell, il est probable que l’exécution des scripts soit désactivée sur votre machine. Ce problème de sécurité est couramment rencontré, mais peut être résolu facilement en modifiant la politique d’exécution.

Pour activer l’exécution des scripts PowerShell pour l’utilisateur actuel, suivez ces étapes :

Ouvrez une fenêtre PowerShell avec les droits d’administrateur. Vous pouvez le faire en recherchant “PowerShell” dans le menu Démarrer, clic droit sur Windows PowerShell et en sélectionnant “Exécuter en tant qu’administrateur”.

Tapez la commande suivante et appuyez sur Entrée :


Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy RemoteSigned

Cette commande modifie la politique d’exécution pour l’utilisateur actuel en autorisant les scripts téléchargés depuis Internet à s’exécuter, à condition qu’ils soient signés par un éditeur de confiance.

Vous serez invité à confirmer cette action. Tapez “Y” et appuyez sur Entrée pour valider. Vous pouvez maintenant exécuter des scripts PowerShell pour l’utilisateur actuel.

Pour vérifier que la politique a bien été modifiée, utilisez la commande suivante :


Get-ExecutionPolicy -List

Cette commande affiche une liste des politiques d’exécution appliquées à différents niveaux de portée. Assurez-vous que le paramètre CurrentUser soit défini sur RemoteSigned.

En utilisant ces commandes, vous pouvez activer et vérifier l’exécution des scripts PowerShell pour votre utilisateur actuel. Cela vous permettra d’utiliser pleinement les scripts pour automatiser les tâches et administrer vos systèmes Windows.

Activer l’exécution de script pour l’ensemble du système

Lorsque vous essayez d’exécuter un script PowerShell et que vous recevez un message d’erreur indiquant que l’exécution de scripts est désactivée, c’est probablement dû à la politique d’exécution de PowerShell. Cette politique peut être réglée de manière à restreindre l’exécution de scripts de différentes façons afin de protéger votre système contre les scripts malveillants.

Pour activer l’exécution de scripts PowerShell, vous devez d’abord ouvrir une session PowerShell en tant qu’administrateur. Pour ce faire, cliquez sur le bouton Démarrer, puis recherchez PowerShell. Faites un clic droit sur Windows PowerShell et sélectionnez Exécuter en tant qu’administrateur.

Une fois PowerShell ouvert, vous pouvez vérifier la politique d’exécution actuelle en entrant la commande suivante :


Get-ExecutionPolicy

Pour modifier cette politique et permettre l’exécution des scripts, vous devez utiliser la commande suivante :


Set-ExecutionPolicy RemoteSigned

Cette commande ajuste la politique d’exécution pour permettre les scripts signés téléchargés et tout script créé localement. Une fois que vous avez exécuté cette commande, une invite s’affichera pour confirmer votre choix. Tapez O pour Oui et appuyez sur Entrée.

Pour activer l’exécution de script pour l’ensemble du système, vous devez utiliser la directive Scope spécifiquement comme suit :


Set-ExecutionPolicy RemoteSigned -Scope LocalMachine

Cette commande ajuste la politique d’exécution pour tous les utilisateurs du système. Encore une fois, vous devrez confirmer cette modification en tapant O pour Oui et en appuyant sur Entrée.

Il est également possible de définir des niveaux de politique d’exécution plus restrictifs ou plus permissifs en fonction de vos besoins :

  • Restricted – Aucune exécution de script n’est autorisée.
  • AllSigned – Tous les scripts doivent être signés par un éditeur de confiance.
  • RemoteSigned – Les scripts téléchargés doivent être signés par un éditeur de confiance.
  • Unrestricted – Les scripts peuvent être exécutés sans restriction.

En utilisant ces paramètres, vous pouvez ajuster la sécurité de votre environnement PowerShell en fonction de vos besoins spécifiques tout en évitant les erreurs causées par la restriction de l’exécution des scripts.

  • Couette coton imprimée Detroit 200 g/m² - BlancheporteCette couette à l'imprimé très moderne peut s'utiliser sans housse. Elle est imprimée sur les 2 faces et peut aussi être coordonnée aux draps de la gamme Détroit.Couette 1 personne : 140x200cmBleu
    Cette couette à l'imprimé très moderne peut s'utiliser sans housse. Elle est imprimée sur les 2 faces et peut aussi être coordonnée aux draps de la gamme Détroit.
  • Couette coton imprimée Detroit 200 g/m² - BlancheporteCette couette à l'imprimé très moderne peut s'utiliser sans housse. Elle est imprimée sur les 2 faces et peut aussi être coordonnée aux draps de la gamme Détroit.Couette 1 personne : 140x200cmViolet
    Cette couette à l'imprimé très moderne peut s'utiliser sans housse. Elle est imprimée sur les 2 faces et peut aussi être coordonnée aux draps de la gamme Détroit.
  • Couette coton imprimée Detroit 400 g/m² - BlancheporteCette couette à l'imprimé très moderne peut s'utiliser sans housse. Elle est imprimée sur les 2 faces !Couette 2 personnesonnes : 220x240cmViolet
    Cette couette à l'imprimé très moderne peut s'utiliser sans housse. Elle est imprimée sur les 2 faces !
Avatar photo

Francois

Bonjour, je m'appelle François et j'ai 29 ans. Je suis passionné par le scripting, le bash, le Powershell et les infrastructures Windows et Linux. Bienvenue sur mon site web.

Commentaires

Laisser un commentaire

Votre commentaire sera révisé par les administrateurs si besoin.