PowerShellはデジタル署名されていませんエラーは、ユーザーがPowerShellスクリプトを実行している間にトリガーされることがよくあります。 これは通常、PowerShell実行ポリシーに設定された値が原因で発生します。
私たちのサーバー管理サービスの一環として、我々は定期的にwindows関連のエラーを修正するためにお客様を助けます。
今日は、このエラーの考えられる原因と修正について説明しましょう。PowerShellはデジタル署名されていないエラーとは何ですか?
信頼されたパブリッシャーによって署名されていないPowerShellスクリプトを実行しようとすると、次のように”PowerShellはデジタル署名されていません”というセここで、このエラーを修正するためのいくつかの可能な方法について説明しましょう。
PowerShellを修正する方法はデジタル署名されたエラーではありませんか?このエラーを修正するには、いくつかの方法があります。
私たちはそれらのそれぞれを一つずつ見てみましょう。
実行ポリシーの確認と変更
ここでの最初のステップは、実行ポリシーを確認することです。 実行ポリシーを取得するには、Get-ExecutionPolicyコマンドレットを実行します。 Get-ExecutionPolicyコマンドレットのlistパラメーターは、各スコープのポリシーを示します。
PS C:\> Get-ExecutionPolicy -list
実行ポリシーを理解したら、このエラーメッセージを取り除く最も簡単で安全でない方法は、ExecutionPolicyをunrestrictedに変更することです。
さらに、SetExecutionPolicyコマンドレットを使用して実行ポリシーを変更できます。 次のコマンドは、実行ポリシーをUnrestrictedに設定します。
PS C:> Set-ExecutionPolicy unrestricted.
プロンプトが表示されたら、Yを押して変更を確認します。
その後、レジストリのポリシー変更を更新し、再度変更するまでこの方法のままにします
現在のPowerShellセッションをバイパスします
実行ポ
Set-ExecutionPolicy -Scope Process -ExecutionPolicy ByPass
上記のこの単純なコマンドは、現在のPowerShellセッションをバイパスする実行ポリシーを設定します。 このPowerShellセッションを閉じると、これらの設定が失われます。
ExecutionPolicyパラメータの許容値
以下は、-ExecutionPolicyパラメータの許容値の詳細です。
- Restricted。 設定ファイルの読み込みやスクリプトの実行は行いません。 Restrictedはデフォルトの実行ポリシーです。
- すべて署名されています。 ローカルコンピューターに記述するスクリプトを含む、すべてのスクリプトと構成ファイルに署名するには、信頼された発行者が必要です。
- リモート署名されています。 インターネットからダウンロードしたすべてのスクリプトと構成ファイルに署名するには、信頼された発行者が必要です。
- 無制限。 すべての設定ファイルをロードし、すべてのスクリプトを実行します。 インターネットからダウンロードした署名されていないスクリプトを実行する場合は、許可を要求します。
- バイパス。 何もブロックせず、警告やプロンプトはありません。
- 定義されていません。 現在割り当てられている実行ポリシーを現在のスコープから削除します。 このパラメーターは、グループポリシースコープで設定された実行ポリシーを削除しません。
Set-ExecutionPolicyコマンドのデフォルトのスコープはLocalMachineです。 また、-Scopeパラメータを追加してpolicyのスコープを指定することもできます。 たとえば、設定できるスコープには次のものがあります。
- Process:実行ポリシーは、現在のPowerShellプロセスにのみ影響します。
- CurrentUser:実行ポリシーは現在のユーザーにのみ影響します。
- LocalMachine:実行ポリシーは、コンピューターのすべてのユーザーに影響します。
さらに、特定のスコープから実行ポリシーを削除するには、そのスコープの実行ポリシーをUndefinedに設定します。
ダウンロードしたファイルのブロックを解除
RemoteSignedExecutionポリシーの場合、インターネットまたは信頼できる発行元から電子メールからダウンロードしたすべ
スクリプトの内容が安全であると信じている場合は、Unblock-Fileコマンドレットを使用してセッションで実行するためにブロックを解除できます。
PS C:> Unblock-File -Path C:Downloadsscript1.ps1
結論
要するに、PowerShellはデジタル署名されていませんPowerShell実行ポリシーがAllSignedまたはRemoteSignedに設定されている場合にセキュリティエラーが発生する可能性があります。 今日は、サポートエンジニアがこのエラーをどのように修正するかを見ました。