PowerShell でスクリプトを実行するために実行ポリシーを変更する方法
- PowerShell 実行ポリシーを変更するには、PowerShell (管理者)を開き、「Set-ExecutionPolicy RemoteSigned」コマンドを実行して、スクリプトの実行を許可するように設定します。「Set-ExecutionPolicy AllSigned」コマンドは、信頼できる発行元からのスクリプトを許可します。または、「Set-ExecutionPolicy Unrestricted」コマンドは、制限なしでスクリプトを許可します。
- 「Set-ExecutionPolicy Restricted」を実行して変更を元に戻し、スクリプトが実行されないようにすることもできます。
- 最後に、Windows 11 および 10 の設定アプリからポリシーを変更することで、PowerShell スクリプトを許可できます。
Windows 11 (または 10) では、デフォルトでは、PowerShell でスクリプトを実行しようとすると、「このシステムではスクリプトの実行が無効になっているため、読み込むことができません」というエラー メッセージが出て失敗します。これは、PowerShell に「実行ポリシー」というセキュリティ機能があり、構成ファイルの読み込み方法とスクリプトの実行方法を制御し、システム上で悪意のあるコードが実行されないようにするためです。
Windows 11 (または 10) でスクリプトを実行する必要がある場合は、ローカル コンピューター、現在のユーザー、またはセッションの実行ポリシーを変更できます。
ローカル コンピューターと現在のユーザーに対して PowerShell 実行ポリシーを設定すると、その情報はレジストリに保存されます。特定のセッションに対してポリシーを構成すると、ポリシーはメモリに保持され、セッションを閉じると失われます。
Microsoftによれば、実行ポリシーはアクションを制限しません。コマンドライン インターフェイス (CLI) でスクリプトを入力すると、ポリシーをバイパスできます。実行ポリシーは、ユーザーが悪意のあるスクリプトの実行を防止できるように設計されています。
このガイドでは、Windows 11 または 10 上の PowerShell でスクリプトを正常に実行するために実行ポリシーを変更する方法について説明します。
PowerShell から Windows 11 の実行ポリシーを変更する
Windows 11 (または 10) で PowerShell 実行ポリシーを変更するには、次の手順に従います。
-
Windows 11 でスタートを開きます。
-
PowerShellを検索し、一番上の結果を右クリックして、「管理者として実行」オプションを選択します。
-
現在の実行ポリシーを確認するには、次のコマンドを入力してEnterキーを押します。
Get-ExecutionPolicy
-
(オプション) 有効な PowerShell 実行ポリシーを表示するには、次のコマンドを入力し、Enterキーを押します。
Get-ExecutionPolicy -List
-
次のコマンドを入力して PowerShell 実行ポリシーを変更し、Windows 11 でスクリプトを実行できるようにしてEnter キーを押します。
Set-ExecutionPolicy RemoteSigned
-
(オプション) スクリプトが実行されないように実行ポリシーを変更するには、次のコマンドを入力してEnterキーを押します。
Set-ExecutionPolicy Restricted
手順を完了したら、スクリプトを再度実行できます。これで、スクリプトは Windows 11 で正常に実行されるはずです。コンピューターでスクリプトの実行を許可したくない場合は、手順に記載されているオプションのコマンドを実行できます。
https://www.youtube.com/watch?v=PXwltlq6YhU
現在のユーザーまたはローカル コンピューターに対してスクリプトを実行するように実行ポリシーを変更する場合は、次のように「スコープ」オプションを使用する必要があります。Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
または。Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope LocalMachine
Windows 11 では、スクリプトを許可または拒否するために、次の 4 つの異なる実行ポリシーから選択できます。
- 制限付き –すべてのスクリプト ファイルの実行をブロックします。
- RemoteSigned —コンピュータ上でスクリプトを作成できます。ただし、別のデバイスで作成されたスクリプトは、信頼できる署名がないと実行されません。
- AllSigned —すべてのスクリプトの実行を許可します。ただし、信頼できる発行元が署名を組み込んでいる場合のみです。
- 無制限 –制限なしで任意のスクリプトを実行します。
必要なパラメータがなく、出力を返さないスクリプトを実行する必要がある場合は、実行ポリシーを変更する必要はありません。代わりに、コマンドを使用してPowerShell.exe -File "FILENAME"-ExecutionPolicy Bypass
制限を回避できます。
Windows 11の設定から実行ポリシーを変更する
Windows 11 および 10 では、設定アプリからコマンド コンソールの構成を変更することで、PowerShell でスクリプトを実行できるようにすることもできます。
Windows 11から
設定アプリから PowerShell 実行ポリシーを変更するには、次の手順に従います。
-
設定を開きます。
-
システムをクリックします。
-
「開発者向け」ページをクリックします。
-
PowerShell設定をクリックします。
-
「実行ポリシーを変更してローカル PowerShell スクリプトを許可する […]」トグル スイッチをオンにします。
この機能が不要になった場合は、同じ手順を使用してスクリプトをブロックできますが、手順 5で、 「ローカル PowerShell スクリプトを許可するように実行ポリシーを変更する […]」トグル スイッチをオフにします。
Windows 10から
設定アプリから PowerShell 実行ポリシーを変更するには、次の手順に従います。
-
設定を開きます。
-
[更新とセキュリティ]をクリックします。
-
「開発者向け」ページをクリックします。
-
PowerShell 設定の「実行ポリシーを変更してローカル PowerShell スクリプトを許可する […]」オプションをオンにします。
-
[適用]ボタンをクリックします。
この機能が不要になった場合は、同じ手順を使用してスクリプトをブロックできますが、手順 4で、「ローカル PowerShell スクリプトを許可するように実行ポリシーを変更する […]」オプションをオフにして変更を適用します。
手順を完了すると、PowerShell の実行ポリシーが「RemoteSigned」に設定されます。このポリシーにより、署名なしでスクリプトを実行できますが、リモート スクリプトの場合は署名が必要になります。
2024 年 7 月 12 日更新:このガイドは、正確性を確保し、プロセスの変更を反映するために更新されました。
コメントを残す