PowerShell Basics - "Get-ExecutionPolicy"


Although you can create and execute PowerShell scripts, Microsoft has disabled scripting by default in an effort to prevent malicious code from executing in a PowerShell environment. You can use the Set-ExecutionPolicy command to control the level of security surrounding PowerShell scripts.

The 4 Levels of Security:

  • Restricted -- Restricted is the default execution policy and locks PowerShell down so that commands can be entered only interactively. PowerShell scripts are not allowed to run.
  • All Signed -- If the execution policy is set to All Signed then scripts will be allowed to run, but only if they are signed by a trusted publisher.
  • Remote Signed -- If the execution policy is set to Remote Signed, any PowerShell scripts that have been locally created will be allowed to run. Scripts created remotely are allowed to run only if they are signed by a trusted publisher.
  • Unrestricted -- As the name implies, Unrestricted removes all restrictions from the execution policy.
You set an execution policy by entering the Set-ExecutionPolicy command followed by the name of the policy. For example, if you wanted to allow scripts to run in unrestricted manner you would type:

Set-ExecutionPolicy Unrestricted

If you are working on an unfamiliar server, you will need to know what execution policy is in use before attempting to run a script. To do so, run the below command:

Get-ExecutionPolicy

No comments

Back to Top