Skip to content

TechDirectArchive

Hands-on IT, Cloud, Security, Veeam & DevOps

  • Home
  • About
  • Advertise With US
  • Reviews
  • Contact
  • Toggle search form

How to set Execution Policy via Windows PowerShell

Posted on 04/02/202017/08/2026 Christian By Christian No Comments on How to set Execution Policy via Windows PowerShell
  1. Home
  2. Windows Server
  3. How to set Execution Policy via Windows PowerShell
Windows PowerShell logo on a blue abstract background

By default, PowerShell prevents the execution of scripts on Windows systems. The PowerShell execution policy actively controls the conditions under which it loads configuration files and runs scripts as a security feature. In this guide, you will learn how to set Execution Policy via Windows PowerShell. Please see How to install and update PowerShell version 7 on Windows and Linux, and how to determine the execution policy configured on Windows PC.

Note: This feature helps prevent the execution of malicious scripts. In order to run and execute scripts, one of the following values must be taken into consideration.

See this guide on how this is done “how to set the PowerShell Execution Policy via the Windows Registry settings“.

PowerShell Policies

Below are the various values of policies that exist. 

  • AllSigned: This runs the only script that is signed by a trusted publisher only. 
  • ByPass: Configured to permit a certain script to run
  • Default: By default, the Execution Policy is set to restricted for Windows devices and for server, it is RemoteSigned. 
  • RemoteSgned: You must sign the script with a trusted publisher before allowing it to run. Scripts run from the local computer don’t need to be signed. There are no prompts when you attempt to run a script. 
  • Restricted: In this mode, no PowerShell script is allowed to run on the device.  
  • Unrestricted: In this mode, the device runs these scripts regardless of where they are created or downloaded from.
  • Undefined (No execution policy): This value does not have the execution policy set. The effective execution policy is Restricted, which is the default execution policy.   

PowerShell Scope

This sets the scope on which the execution policy applies. You can run and set the execution policy at various scopes, as shown below.

The effective execution policy is determined by the order of precedence as follows. See the screenshot below for more information.

  • MachinePolicy 
  • LocalMachine 
  • Process
  • UserPolicy
  • CurrentUser 

Open PowerShell. This is usually advisable to be run in Admin mode. Type the following command and press the Enter key

Get-ExecutionPolicy -List 

To view the current policy, use

Get-ExecutionPolicy
Windows PowerShell interface displaying the command 'Get-ExecutionPolicy -list' with the output showing undefined execution policies for different scopes.

Here is how to Clone a Virtual Machine via Export and Import and Copying the Virtual Hard Disk on Hyper-V, how to Enable Internet Explorer Mode in Edge in Windows 11, and how to protect your Windows PC from potentially unwanted applications.

Set PowerShell Execution Policy 

The Set-ExecutionPolicy cmdlet changes PowerShell execution policies for Windows computers. Here is how to see the PowerShell Execution Policy.

Type the following command and press the Enter key

Set-ExecutionPolicy Unrestricted

Please see How to Scan Your Code by Integrating SonarCloud into your GitHub Repository, how to Move Azure Resources between Subscriptions, and How to Install SASS on VsCode.

Note: When you hit enter after the prompt, you can select any of the options as follow; by selecting yes, or Yes to All or No. When you hit enter without choosing a value, the No (Nien switch) is selected automatically and the script will not run. Pay close attention to the script below as the position was taken by default and this was set to unrestricted.

Command line interface showing the PowerShell command 'Set-ExecutionPolicy' with prompts for changing execution policy to 'unrestricted'.

Note: Set-ExecutionPolicy doesn’t change the MachinePolicy and UserPolicy scopes because they are set by Group Policies.

The Set-ExecutionPolicy doesn’t override a Group Policy, even if the user preference is more restrictive than the policy.

Here is an example of how to set an execution policy is set to unrestricted. This will permit all scripts to be run on the device.

Screenshot of a Windows PowerShell window displaying a prompt to change the execution policy to 'Unrestricted'. The message warns of potential security risks and presents options to the user.

An example here which is also a best practice measure is to allow the script testwsus.ps1 to run only in order not to set the global execution policy to unrestricted as shown below.  

Set-ExecutionPolicy Bypass -File .\testwsus.ps1

If you don´t want to set this parameter for the entire system you are able to start a PowerShell session in unrestricted mode. 

set-executionpolicy unrestricted -command .\testwsus.ps1

Please see how to Configuring DHCP Scope: Post-deployment of Dynamic Host Configuration Protocol, and how to work with Microsoft Blackboard via private or commercial account.

Set PowerShell Execution Policy via a script

Below is a PowerShell script that is capable of changing the execution policy. Kindly save it in the following format and run it as an administrator.

With the script below, we can define the execution policy of our choice. The script will then check if it matches the current execution policy. If not, the execution policy will be changed.

$Policy = "RemoteSigned"
If ((Get-ExecutionPolicy) -ne $Policy) {
Set-ExecutionPolicy $Policy -Force
Exit
}

I hope you found this blog post helpful on how to set Execution Policy via Windows PowerShell. If you have any questions, please let me know in the comment session.

Thank you for reading this post. Kindly share it with others.

  • Share on X (Opens in new window) X
  • Share on Reddit (Opens in new window) Reddit
  • Share on LinkedIn (Opens in new window) LinkedIn
  • Share on Facebook (Opens in new window) Facebook
  • Share on Pinterest (Opens in new window) Pinterest
  • Share on Tumblr (Opens in new window) Tumblr
  • Share on Telegram (Opens in new window) Telegram
  • Share on WhatsApp (Opens in new window) WhatsApp
  • Share on Mastodon (Opens in new window) Mastodon
  • Share on Bluesky (Opens in new window) Bluesky
Windows Server Tags:Microsoft Windows, PowerShell, Windows 10, Windows 11

Post navigation

Previous Post: Windows 10 Feature and Quality Updates
Next Post: How to set the PowerShell Execution Policy via Windows Registry

Related Posts

  • add or remove features on the specified server failed
    Error 0x80073701: The request to add or remove features on the specified server failed Windows Server
  • integrate Icloud with Windows
    Synchronize Apple Calendar on Windows with Outlook [Part 2] Mac
  • Ping 4
    Perform continuous ping on OSes and network Appliances Mac
  • Run Linux on Windows Server
    How to install Windows Subsystem for Linux on Windows Server Linux
  • Install and report or install or shutdown with BitLocker
    BitLocker Windows Update Shutdown or Reboot option behavior Windows
  • images 8
    Microsoft Direct Access: Now Always On VPN Windows Server

More Related Articles

41592 3264bitw10 What is the difference between 32-bit and 64-bit processors Windows Server
Nakivo windows server backup How to perform Windows Server backup with Nakivo or Windows Server backup utility Windows Server
disable automatic updates in Windows How to disable automatic Windows updates via Windows Settings Windows
firewall windows 1 How to create a Windows firewall rule on Windows Windows Server
05kvj2jzbpj1ugp4etb4gdf 19.fit scale.size 2698x1517 e1690630247655 Various methods to launch the Event Viewer Windows Server
Trellix Invalid credential Fix unable to login to Trellix ePO with Windows authentication Windows Server

Leave a Reply Cancel reply

You must be logged in to post a comment.

Microsoft MVP

vexpert-badge-stars-5

Virtual Background

VEEAMLEGEND

Categories

Top 30 Sysadmin blog

veeaam100

Veeam Vanguard

  • Test your webcam and microphone before meeting
    How to Test Your Webcam And Microphone Before Meeting Windows
  • changepsswd
    How to change your Windows Computer login Password Windows
  • Migrate from SQL Database
    Migrate Veeam One Database from SQL Server 2017 to 2025 Backup
  • windows sign in options
    Sign-in options for Windows: Ditch Password for Enhanced Security Windows
  • Feautured image DualBoot
    How to create a dual-boot setup on Windows 11 Windows
  • Failedcluster
    Failover Cluster Manager failed while managing one or more clusters, the error was unable to determine if the computer exists in the domain Virtualization
  • Dellupdate 1
    Fix for security vulnerabilities in the BIOS firmware for some Intel Processors Windows
  • Error 0x800f0823 The specified package cannot be added to this Windows Image
    Error 0x800f0823: Wizard.hta Screen stuck during WDS Deployment Windows Server

Subscribe to Blog via Email

Enter your email address to subscribe to this blog and receive notifications of new posts by email.

Join 1,746 other subscribers
  • RSS - Posts
  • RSS - Comments
  • About
  • Authors
  • Write for us
  • Contact
  • Advertise with us
  • General Terms and Conditions
  • Privacy policy
  • Feedly
  • Telegram
  • Youtube
  • Facebook
  • Instagram
  • LinkedIn
  • Tumblr
  • Pinterest
  • Twitter
  • mastodon
  • Bsky

Tags

Active Directory Azure Bitlocker Microsoft Windows PowerShell WDS Windows 10 Windows 11 Windows Deployment Services Windows Server 2016

Copyright © 2026 TechDirectArchive

Loading Comments...

You must be logged in to post a comment.