Windows PowerShellはMicrosoft社が開発したコマンドラインインターフェイスとシェルスクリプト言語のことで、WindowsXP以降のOSで利用できます。
様々な機能があり、コマンドラインからOSの設定も変更可能です。
PowerShellでは標準でスクリプトファイルの実行は禁止されているので、いろいろスクリプトファイルを実行できるようにするためにはポリシーの変更をする必要があります。
この設定をしておかないとプロファイルを設定した場合も実行されないことがあるので注意。
ここではローカルスクリプトは全て実行可能にします。
PS> Set-ExecutionPolicy RemoteSigned
なお、スクリプトファイルのセキュリティポリシーは下記の4段階があります。
- Unrestricted:インターネットからダウンロードしたスクリプト以外はすべてのスクリプトが実行可能。ただしインターネットからダウンロードしたスクリプトは、実行するかどうかが確認される
- RemoteSigned:ローカルに保存されているスクリプトが実行可能。インターネットからダウンロードしたスクリプトも署名があれば実行可能
- AllSigned:署名されているスクリプトのみ実行が可能。署名がないスクリプトは実行できない
- Restricted:すべてのスクリプトの実行を禁止。デフォルトの状態
現在のポリシーを確認したい時にはGet-ExecutionPolicy
コマンドでポリシーを表示できます。