Learning PowerCLI
上QQ阅读APP看书,第一时间看更新

Modifying the PowerShell execution policy

If this is the first time that you are using Windows PowerShell on the computer on which you installed PowerCLI, you have to change the execution policy to be able to start PowerCLI.

The Windows PowerShell execution policies define when you can run scripts or load configuration files. The possible values for the execution policy are: Restricted, AllSigned, RemoteSigned, Unrestricted, Bypass, and Undefined.

You can check the current execution policy setting with the following command:

PowerCLI C:\> Get-ExecutionPolicy

Get-ExecutionPolicy is a Windows PowerShell commandlet (cmdlet). Cmdlets are commands built into PowerShell or PowerCLI. They follow a verb-noun naming convention. The get cmdlets receives information about the item that is specified as the noun part of the cmdlet.

Set the execution policy to RemoteSigned to be able to start PowerCLI and run scripts written on the local computer with the Set-ExecutionPolicy –ExecutionPolicy RemoteSigned command, as shown in the next screenshot.

Note

You have to run the Set-ExecutionPolicy –ExecutionPolicy RemoteSigned command from a PowerShell or PowerCLI session that you started using the Run as Administrator option, or you will get the following error message:

Set-ExecutionPolicy : Access to the registry key 'HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\1\ShellIds\Microsoft.PowerShell' is denied.

If you are using both the 32-bit and the 64-bit versions of PowerCLI, you have to run this command in both versions.

In the next screenshot of the PowerCLI console, you will see the output of the Set-ExecutionPolicy –ExecutionPolicy RemoteSigned command if you run this command in a PowerCLI session started with "Run as Administrator".

Modifying the PowerShell execution policy

You can get more information about execution policies by typing the following command:

PowerCLI C:\> Get-Help about_Execution_Policies

To get more information about signing your scripts, type the following command:

PowerCLI C:\> Get-Help about_signing