PowerShellの実行ポリシーとは?ポリシーを変更する方法

Power Shell
この記事は約3分で読めます。

PowerShellのスクリプトファイル(.ps1)を実行する場合、既定ではスクリプト実行が抑止されています。

これは、実行ポリシーによるもので、危険なスクリプトの実行からコンピューターを守るために設定されています。

そのため、スクリプトを実行するには、事前に実行ポリシーを変更する必要があります。

Power Shell(パワーシェル)とは

Power Shell(パワーシェル)とは?コマンドプロンプトとの違い
Power Shellは、マイクロソフトにより開発されたコマンドプロンプトの後継ツールで、Windowsに標準搭載されています。コマンドプロンプトでは不可能だった、複数の命令を組み合わせることができ、より高度な処理を行うことができます。

 

実行ポリシーの種類

PowerShellの実行ポリシーの種類は以下です。

実行ポリシー        内容
AllSigned                署名済みスクリプトのみ許可する
RemoteSigned       ローカルスクリプトおよびリモートの署名済みスクリプトを許可する
Unrestricted          すべてのスクリプトを許可する(確認ダイアログ表示)
Bypass                     すべてのスクリプトを許可する

 

実行ポリシーの確認

Get-ExecutionPolicy 

Get-ExecutionPolicy コマンドレットを使用して現在有効になっている実行ポリシーを確認します。

現在は制限されている状態ということが確認できます。

 

実行ポリシーの変更

Set-ExecutionPolicy RemoteSigned

Set-ExecutionPolicy コマンドレットを使用して、新しい実行ポリシーを適用できます。
実行ポリシーの種類として RemoteSigned を指定しています。

実行ポリシー変更の確認メッセージが表示されるので、「Y」を入力しEnterで実行します。

実行ポリシーの確認をすると、変更が適用されています。

 

Get-ExecutionPolicy -list 

スコープごとの実行ポリシーの確認ができます。

ローカルだけ実行ポリシーが変更されていることが確認できました。

 

一時的に実行ポリシーを変更する

スクリプトファイル実行時に一時的に実行ポリシーの変更するには、
-ExecutionPolicyオプションを付けます。

PowerShell -ExecutionPolicy RemoteSigned .\実行テスト.ps1

指定したスクリプトファイル実行時のみ実行ポリシーの変更をしているので、
スクリプトファイルの実行が終わると、実行ポリシーは元に戻っています。

 

まとめ

PowerShellのスクリプトファイル実行は、既定ではスクリプト実行が抑止されているため、事前に実行ポリシーを変更する必要があります。

実行する際は忘れずに実行ポリシーの変更をしましょう。

PowerShellスクリプトファイルの実行

PowerShellのスクリプトファイルを実行する方法
「同じ処理を複数台のPCに行いたい」ことはありませんか?例えば、ファイル名の一括変更やバックアップファイルの作成など。そんなときにPowerShellスクリプトファイルは便利です。 Power Shell(パワーシェル)について詳しくは以下...

PowerShellをタスクスケジューラから実行する

PowerShellをタスクスケジューラから実行する
PowerShellとタスクスケジューラを組み合わせることで、決められた時間に、決められた処理を自動で実行することができます。 今回はCドライブ直下に置いたPowerShellスクリプトファイル(.ps1)をタスクスケジューラから自動実行す...