Get-PSSessionConfiguration
コンピューターに登録されたセッション構成を取得します。
構文
Get-PSSessionConfiguration
[[-Name] <String[]>]
[-Force]
[<CommonParameters>]
説明
コマンドレットは Get-PSSessionConfiguration
、ローカル コンピューターに登録されているセッション構成を取得します。 これは、ユーザーに応じてカスタマイズされたセッション構成を管理するために、システム管理者向けに設計された高度なコマンドレットです。
PowerShell 3.0 以降では、セッション構成 (.pssc) ファイルを使用してセッション構成のプロパティを定義できます。 この機能を使用すると、コンピューター プログラムを記述せずに、カスタマイズされ、制限されたセッションを作成できます。 セッション構成ファイルの詳細については、「about_Session_Configuration_Files」を参照してください。
また、PowerShell 3.0 以降では、返されるセッション構成オブジェクトに新しいノート プロパティが Get-PSSessionConfiguration
追加されました。 ユーザーとセッション構成の作成者は、これらのプロパティによって、セッション構成の比較検討が容易になります。
セッション構成を作成して登録するには、 コマンドレットを使用します Register-PSSessionConfiguration
。
セッション構成の詳細については、「 about_Session_Configurations」を参照してください。
例
例 1 - ローカル コンピューターでセッション構成を取得する
Get-PSSessionConfiguration
例 2 - 2 つの既定のセッション構成を取得する
コマンドは、 の Get-PSSessionConfiguration
Name パラメーターを使用して、"Microsoft" で始まる名前を持つセッション構成のみを取得します。
Get-PSSessionConfiguration -Name Microsoft*
Name PSVersion StartupScript Permission
---- --------- ------------- ----------
microsoft.powershell 5.1 BUILTIN\Administrators AccessAll...
microsoft.powershell32 5.1 BUILTIN\Administrators AccessAll...
例 3 - セッション構成のプロパティと値を取得する
この例は、セッション構成ファイルを使用して作成されたセッション構成のプロパティとプロパティ値を示しています。
Get-PSSessionConfiguration -Name Full | Format-List -Property *
Copyright : (c) 2011 User01. All rights reserved.
AliasDefinitions : {System.Collections.Hashtable}
SessionType : Default
CompanyName : Unknown
GUID : 1e9cb265-dae0-4bd3-89a9-8338a47698a1
Author : User01
ExecutionPolicy : Restricted
SchemaVersion : 1.0.0.0
LanguageMode : FullLanguage
Architecture : 64
Filename : %windir%\system32\pwrshplugin.dll
ResourceUri : http://schemas.microsoft.com/powershell/Full
MaxConcurrentCommandsPerShell : 1500
UseSharedProcess : false
ProcessIdleTimeoutSec : 0
xmlns : http://schemas.microsoft.com/wbem/wsman/1/config/PluginConfiguration
MaxConcurrentUsers : 10
lang : en-US
SupportsOptions : true
ExactMatch : true
configfilepath : C:\WINDOWS\System32\WindowsPowerShell\v1.0\SessionConfig\Full_1e9cb265-dae0-4bd3-89a9-8338a47698a1.pssc
RunAsUser :
IdleTimeoutms : 7200000
PSVersion : 3.0
OutputBufferingMode : Block
AutoRestart : false
MaxShells : 300
MaxMemoryPerShellMB : 1024
MaxIdleTimeoutms : 43200000
SDKVersion : 1
Name : Full
XmlRenderingType : text
Capability : {Shell}
RunAsPassword :
MaxProcessesPerShell : 25
Enabled : True
MaxShellsPerUser : 30
Permission :
この例では、 コマンドレットを Get-PSSessionConfiguration
使用して、完全なセッション構成を取得します。 パイプライン演算子は、完全なセッション構成を コマンドレットに Format-List
送信します。 値が (すべて) の *
Property パラメーターは、リスト内のオブジェクトのすべてのプロパティと値を表示するように指示Format-List
します。
出力には、セッション構成の作成者、セッションの種類、言語モード、このセッション構成で作成されたセッションの実行ポリシー、セッション クォータ、セッション構成ファイルへの完全なパスなど、有用な情報が含まれます。
このセッション構成の表示は、セッション構成ファイルを含むセッションに使用されます。 セッション構成ファイルの詳細については、「about_Session_Configuration_Files」を参照してください。
例 4 - セッション構成を確認する別の方法
この例では、 Get-ChildItem
WSMan: プロバイダー ドライブの コマンドレット (エイリアス dir
) を使用して、Plugin ノードの内容を確認します。 これは、コンピューター上のセッション構成を確認するもう 1 つの方法です。
dir wsman:\localhost\plugin
Type Keys Name
---- ---- ----
Container {Name=Event Forwarding Plugin} Event Forwarding Plugin
Container {Name=Full} Full
Container {Name=microsoft.powershell} microsoft.powershell
Container {Name=microsoft.powershell.workf... microsoft.powershell.workflow
Container {Name=microsoft.powershell32} microsoft.powershell32
Container {Name=microsoft.ServerManager} microsoft.ServerManager
Container {Name=WMI Provider} WMI Provider
PlugIn ノードには、登録済みの PowerShell セッション構成を表す ContainerElement オブジェクト (Microsoft.WSMan.Management.WSManConfigContainerElement) と、WS-Management 用の他のプラグインが含まれています。
例 6 - リモート コンピューターでセッション構成を表示する
この例は、WSMan プロバイダーを使用して、リモート コンピューター上のセッション構成を表示する方法を示しています。 このメソッドはコマンドほど多くの情報を Get-PSSessionConfiguration
提供しませんが、このコマンドレットを実行するためにユーザーが Administrators グループのメンバーである必要はありません。
Connect-WSMan -ComputerName Server01
dir WSMan:\Server01\Plugin
WSManConfig: Microsoft.WSMan.Management\WSMan::localhost\Plugin
Type Keys Name
---- ---- ----
Container {Name=Empty} Empty
Container {Name=Event Forwarding Plugin} Event Forwarding Plugin
Container {Name=Full} Full
Container {Name=microsoft.powershell} microsoft.powershell
Container {Name=microsoft.powershell.workf... microsoft.powershell.workflow
Container {Name=microsoft.powershell32} microsoft.powershell32
Container {Name=microsoft.ServerManager} microsoft.ServerManager
Container {Name=NoLanguage} NoLanguage
Container {Name=RestrictedLang} RestrictedLang
Container {Name=RRS} RRS
Container {Name=SEL Plugin} SEL Plugin
Container {Name=WithProfile} WithProfile
Container {Name=WMI Provider} WMI Provider
コマンドレットは Connect-WSMan
、Server01 リモート コンピューター上の WinRM サービスに接続します。 Get-ChildItem
WSMan: ドライブのコマンドレット (エイリアスdir
) は、Server01\Plugin パス内の項目を取得します。 出力は、Server01 コンピューターの プラグイン ディレクトリにあるアイテムを示しています。 このアイテムには、WSMan プラグインの一種であるセッション構成のほか、コンピューター上にあるその他の種類のプラグインが含まれます。
例 7 - リモート コンピューターから詳細なセッション構成を取得する
この例では、リモート コンピューターでコマンドを Get-PSSessionConfiguration
実行する方法を示します。 例に挙げたコマンドは、ローカル コンピューター上のクライアント設定およびリモート コンピューター上のサービス設定で、CredSSP 委任が有効になっている必要があります。
この例のコマンドを実行するには、ローカル コンピューターとリモート コンピューターの Administrators グループのメンバーである必要があり、[ 管理者として実行 ] オプションを使用して PowerShell を起動する必要があります。
Enable-WSManCredSSP -Delegate Server02
Connect-WSMan Server02
Set-Item WSMan:\Server02*\Service\Auth\CredSSP -Value $true
Invoke-Command -ScriptBlock {Get-PSSessionConfiguration} -ComputerName Server02 -Authentication CredSSP -Credential Domain01\Admin01
Name PSVersion StartupScript Permission PSComputerName
---- --------- ------------- ---------- --------------
microsoft.powershell 5.1 BUILTIN\Administrators AccessAll... server02.corp.fabrikam.com
microsoft.powershell32 5.1 BUILTIN\Administrators AccessAll... server02.corp.fabrikam.com
MyX86Shell 5.1 c:\test\x86Shell.ps1 BUILTIN\Administrators AccessAll... server02.corp.fabrikam.com
コマンドレットは Enable-WSManCredSSP
、ローカル コンピューターである Server01 で CredSSP 委任を有効にします。 コマンドレットは Connect-WSMan
Server02 コンピューターに接続します。 このアクションにより、Server02 のノードがローカル コンピューターの WSMan: ドライブに追加され、Server02 コンピューターの WS-Management 設定を表示および変更できます。 コマンドレットは Set-Item
、Server02 コンピューターのサービス ノードの CredSSP 項目の値を True に変更 します。 これによってリモート コンピューターのサービス設定が構成されます。 このコマンドレットは Invoke-Command
、Get-PSSessionConfiguration
Server02 コンピューターで コマンドを実行します。 このコマンドは、Credential パラメーターを使用します。また、Authentication パラメーターを CredSSP という値で使用します。 出力は、Server02 リモート コンピューター上のセッション構成を示しています。
例 8 - セッション構成のリソース URI を取得する
この例は、リソース URI を受け取るユーザー設定変数の $PSSessionConfigurationName
値を設定する場合に便利です。
(Get-PSSessionConfiguration -Name CustomShell).resourceURI
http://schemas.microsoft.com/powershell/microsoft.CustomShell
変数は $PSSessionConfigurationName
、セッションの作成時に使用される既定の構成を指定します。 この変数は、ローカル コンピューターで設定されますが、リモート コンピューターの構成を指定します。 変数の $PSSessionConfiguration
詳細については、「 about_Preference_Variables」を参照してください。
パラメーター
-Force
WinRM サービスが実行されていない場合に、WinRM サービスの再起動を求めるメッセージを表示しません。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Name
指定された名前または名前パターンのセッション構成のみを取得します。 1 つ以上のセッション構成名を入力します。 ワイルドカードを使用できます。
Type: | String[] |
Position: | 0 |
Default value: | All session configurations on the local computer |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
入力
None
パイプを使用してこのコマンドレットに入力を渡すことはできません。
出力
Microsoft.PowerShell.Commands.PSSessionConfigurationCommands
メモ
このコマンドレットを実行するには、[ 管理者として実行 ] オプションを使用して PowerShell を起動します。
コンピューター上のセッション構成を表示するには、そのコンピューターの Administrators グループのメンバーである必要があります。
リモート コンピューターでコマンドを
Get-PSSessionConfiguration
実行するには、ローカル コンピューターのクライアント設定 (コマンドレットを使用Enable-WSManCredSSP
) とリモート コンピューターのサービス設定で、資格情報セキュリティ サービス プロバイダー (CredSSP) 認証を有効にする必要があります。 また、リモート セッションを確立するときに、Authentication パラメーターの CredSSP 値を使用する必要があります。 使用しない場合は、アクセスが拒否されます。返される
Get-PSSessionConfiguration
オブジェクトの note プロパティは、値がある場合にのみオブジェクトに表示されます。 セッション構成ファイルを使用して作成されたセッション構成にのみ、定義されたすべてのプロパティがあります。セッション構成オブジェクトのプロパティは、セッション構成に設定されているオプションとその値によって異なります。 また、セッション構成ファイルを使用するセッション構成には追加のプロパティがあります。
WSMan: ドライブでコマンドを使用して、セッション構成のプロパティを変更できます。 ただし、PowerShell 2.0 の WSMan: ドライブを使用して、PowerShell 3.0 で導入されたセッション構成プロパティ ( OutputBufferingMode など) を変更することはできません。 PowerShell 2.0 コマンドではエラーは生成されませんが、無効です。 PowerShell 3.0 で導入されたプロパティを変更するには、PowerShell 3.0 の WSMan: ドライブを使用します。
関連リンク
- Disable-PSSessionConfiguration
- Enable-PSSessionConfiguration
- Get-PSSessionConfiguration
- New-PSSessionConfigurationFile
- New-PSSessionOption
- Register-PSSessionConfiguration
- Set-PSSessionConfiguration
- Test-PSSessionConfigurationFile
- Unregister-PSSessionConfiguration
- WSMan プロバイダー
- about_Session_Configurations
- about_Session_Configuration_Files