Get-ExecutionPolicy
現在のセッションの実行ポリシーを取得します。
構文
All
Get-ExecutionPolicy
[[-Scope] <ExecutionPolicyScope>]
[-List]
[<CommonParameters>]
説明
各スコープの実行ポリシーを優先順位の順に表示するには、Get-ExecutionPolicy -Listを使用します。 PowerShell セッションの有効な実行ポリシーを表示するには、パラメーターなしで Get-ExecutionPolicy を使用します。
有効な実行ポリシーは、Set-ExecutionPolicy とグループ ポリシーの設定によって設定される実行ポリシーによって決まります。
詳細については、about_Execution_Policiesを参照してください。
例
例 1: すべての実行ポリシーを取得する
このコマンドは、各スコープの実行ポリシーを優先順位の順に表示します。
Get-ExecutionPolicy -List
Scope ExecutionPolicy
----- ---------------
MachinePolicy Undefined
UserPolicy Undefined
Process Undefined
CurrentUser AllSigned
LocalMachine Undefined
Get-ExecutionPolicy コマンドレットは、List パラメーターを使用して、各スコープの実行ポリシーを表示します。
例 2: 実行ポリシーを設定する
この例では、ローカル コンピューターの実行ポリシーを設定する方法を示します。
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope LocalMachine
Get-ExecutionPolicy -List
Scope ExecutionPolicy
----- ---------------
MachinePolicy Undefined
UserPolicy Undefined
Process Undefined
CurrentUser AllSigned
LocalMachine RemoteSigned
Set-ExecutionPolicy コマンドレットは、ExecutionPolicy パラメーターを使用して、RemoteSigned ポリシーを指定します。
Scope パラメーターは、既定のスコープ値である LocalMachineを指定します。
実行ポリシー設定を表示するには、Get-ExecutionPolicy パラメーターと共に コマンドレットを使用します。
例 3: 有効な実行ポリシーを取得する
この例では、PowerShell セッションの有効な実行ポリシーを表示する方法を示します。
PS> Get-ExecutionPolicy -List
Scope ExecutionPolicy
----- ---------------
MachinePolicy Undefined
UserPolicy Undefined
Process Undefined
CurrentUser AllSigned
LocalMachine RemoteSigned
PS> Get-ExecutionPolicy
AllSigned
Get-ExecutionPolicy コマンドレットは、List パラメーターを使用して、各スコープの実行ポリシーを表示します。
Get-ExecutionPolicy コマンドレットは、有効な実行ポリシーを表示するパラメーターなしで実行 AllSigned。
例 4: 実行ポリシーを変更せずにスクリプトを実行するブロックを解除する
この例では、RemoteSigned 実行ポリシーを使用して、署名されていないスクリプトを実行できないようにする方法を示します。
コマンドレットを使用して Unblock-File であることを確認することをお勧めします。
Unblock-File コマンドレットはスクリプトのブロックを解除して実行できますが、実行ポリシーは変更しません。
PS> Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope LocalMachine
PS> Get-ExecutionPolicy
RemoteSigned
PS> .\Start-ActivityTracker.ps1
.\Start-ActivityTracker.ps1 : File .\Start-ActivityTracker.ps1 cannot be loaded.
The file .\Start-ActivityTracker.ps1 is not digitally signed.
The script will not execute on the system.
For more information, see about_Execution_Policies at https://go.microsoft.com/fwlink/?LinkID=135170.
At line:1 char:1
+ .\Start-ActivityTracker.ps1
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [], PSSecurityException
+ FullyQualifiedErrorId : UnauthorizedAccess
PS> Unblock-File -Path .\Start-ActivityTracker.ps1
PS> Get-ExecutionPolicy
RemoteSigned
PS> .\Start-ActivityTracker.ps1
Task 1:
Set-ExecutionPolicy では、ExecutionPolicy パラメーターを使用して、RemoteSigned ポリシーを指定します。 ポリシーは、既定のスコープ (LocalMachine) に設定されます。
Get-ExecutionPolicy コマンドレットは、RemoteSigned が現在の PowerShell セッションの有効な実行ポリシーであることを示しています。
Start-ActivityTracker.ps1 スクリプトは、現在のディレクトリから実行されます。 スクリプトはデジタル署名されていないため、RemoteSigned によってブロックされます。
この例では、スクリプトのコードがレビューされ、安全に実行できるものとして検証されています。
Unblock-File コマンドレットは、Path パラメーターを使用してスクリプトのブロックを解除します。
Unblock-File が実行ポリシーを変更していないことを確認するには、有効な実行ポリシー Get-ExecutionPolicy 表示 RemoteSigned。
Start-ActivityTracker.ps1 スクリプトは、現在のディレクトリから実行されます。 スクリプトは、Unblock-File コマンドレットによってブロック解除されたため、実行を開始します。
パラメーター
-List
セッションのすべての実行ポリシー値を取得します。 既定では、Get-ExecutionPolicy は有効な実行ポリシーのみを取得します。
パラメーターのプロパティ
| 型: | SwitchParameter |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
(All)
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-Scope
実行ポリシーの影響を受けるスコープを指定します。
有効な実行ポリシーは、次のように優先順位によって決定されます。
-
MachinePolicy。 コンピューターのすべてのユーザーのグループ ポリシーによって設定されます。 -
UserPolicy。 コンピューターの現在のユーザーのグループ ポリシーによって設定されます。 -
Process。 現在の PowerShell セッションにのみ影響します。 -
LocalMachine。 コンピューターのすべてのユーザーに影響を与える既定のスコープ。 -
CurrentUser。 現在のユーザーにのみ影響します。
パラメーターのプロパティ
| 型: | ExecutionPolicyScope |
| 規定値: | Effective execution policy |
| 指定可能な値: | CurrentUser, LocalMachine, MachinePolicy, Process, UserPolicy |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
(All)
| 配置: | 0 |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | True |
| 残りの引数からの値: | False |
CommonParameters
このコマンドレットでは、一般的なパラメーター -Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction、-WarningVariable の各パラメーターがサポートされています。 詳細については、about_CommonParametersを参照してください。
入力
None
このコマンドレットにオブジェクトをパイプすることはできません。
出力
ExecutionPolicy
このコマンドレットは、Linux および macOS プラットフォーム 無制限の を常に返します。 Windows プラットフォームでは、現在の実行ポリシーが返されます。
メモ
実行ポリシーは、PowerShell セキュリティ戦略の一部です。 実行ポリシーによって、PowerShell プロファイルなどの構成ファイルを読み込めるか、スクリプトを実行できるかが決まります。 また、スクリプトを実行する前にデジタル署名する必要があるかどうか。