スクリプトに署名すると、スクリプトはPowerShellのすべてのエクスクルージョンポリシーに準拠し、スクリプトの完全性が保証されます。署名されたスクリプトは、署名された後に変更された場合、実行に失敗します。
スクリプトの署名には、コード署名証明書が必要です。推奨事項:
PowerShellには、スクリプトまたは構成を実行するために必要な条件を制御する設定可能な実行ポリシーがあります。複数のスコープに対して実行ポリシーを設定できます。コンピュータ、現在のユーザーおよび現在のプロセス。 実行ポリシーは簡単にバイパスすることができ、ユーザーを制限するのではなく、誤って署名ポリシーに違反しないように保護します。
使用可能なポリシーは次のとおりです。
設定 | 説明 |
---|---|
制限付き | スクリプトは許可されません |
AllSigned | すべてのスクリプトに署名する必要があります |
RemoteSigned | すべてのローカルスクリプトが許可されます。署名されたリモートスクリプトのみ |
無制限 | 要件はありません。すべてのスクリプトは許可されていますが、インターネットからダウンロードしたスクリプトを実行する前に警告します |
バイパス | すべてのスクリプトが許可され、警告は表示されません |
未定義 | 現在のスコープの現在の実行ポリシーを削除します。親ポリシーを使用します。すべてのポリシーが未定義の場合、制限が使用されます。 |
powershell.exe
プロセスを起動するときに、 Set-ExecutionPolicy
cmdlet、Group Policyまたは-ExecutionPolicy
パラメーターを使用して、現在の実行ポリシーを変更できます。