PowerShellを使ってみようと思ったら、「実行できません」と表示された経験、ありませんか?それ、実は「実行ポリシー」という設定が原因かもしれません。今回は、PowerShellの実行権限について、初心者の方にもわかりやすく解説します。
PowerShellの実行ポリシーとは?
PowerShellには、スクリプトが安全に実行されるようにするための「実行ポリシー」という仕組みがあります。これにより、信頼できるスクリプトだけが実行されるようになっています。
ここがポイント!
- Restricted(制限付き): スクリプトの実行が禁止されています。
- AllSigned(すべて署名済み): 信頼された発行者によって署名されたスクリプトのみ実行できます。
- RemoteSigned(リモート署名付き): インターネットからダウンロードしたスクリプトは署名が必要ですが、ローカルのスクリプトは制限なしで実行できます。
- Unrestricted(制限なし): すべてのスクリプトが実行可能です。
実行ポリシーを確認・変更する方法
実行ポリシーを確認するには、PowerShellを管理者として起動し、以下のコマンドを入力します。
Get-ExecutionPolicy
出力結果が「Restricted」などの場合、スクリプトの実行が制限されています。これを変更するには、以下のコマンドを使用します。
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
このコマンドは、現在のユーザーに対して「RemoteSigned」ポリシーを適用します。これにより、ローカルのスクリプトは署名なしで実行できるようになります。
注意点とおすすめの設定
ここがポイント!
- セキュリティを考慮: 実行ポリシーを「Unrestricted」に設定すると、すべてのスクリプトが実行可能になりますが、セキュリティリスクが高まります。可能な限り「RemoteSigned」や「AllSigned」を使用しましょう。
- 一時的な変更: 一時的に実行ポリシーを変更したい場合、以下のコマンドでセッション中のみ変更できます。
Set-ExecutionPolicy Bypass -Scope Process
このコマンドは、PowerShellを閉じると元の設定に戻ります。
まとめ
PowerShellの実行ポリシーは、スクリプトの安全な実行を守るための重要な設定です。設定を変更する際は、セキュリティに配慮し、必要な範囲でのみ変更を行いましょう。




コメント