Set-PSSessionConfiguration
登録されたセッション構成のプロパティを変更します。
構文
Set-PSSessionConfiguration [-AssemblyName] <string> [-ConfigurationTypeName] <string> [-Name] <string> [-ApplicationBase <string>] [-Force] [-MaximumReceivedDataSizePerCommandMB <double>] [-MaximumReceivedObjectSizeMB <double>] [-NoServiceRestart] [-SecurityDescriptorSDDL <string>] [-ShowSecurityDescriptorUI] [-StartupScript <string>] [-ThreadApartmentState {<STA> | <MTA> | <Unknown>}] [-ThreadOptions {<Default> | <UseNewThread> | <ReuseThread> | <UseCurrentThread>}] [-Confirm] [-WhatIf] [<CommonParameters>]
説明
Set-PSSessionConfiguration コマンドレットは、ローカル コンピューターに登録されたセッション構成のプロパティを変更します。これは、システム管理者がユーザーの代わりにカスタマイズされたセッション構成を管理するために使用する高度なコマンドレットです。
Name パラメーターを使用して、変更する構成を識別します。その他のパラメーターを使用して、セッション構成のプロパティに新しい値を指定します。構成からプロパティ値を削除して既定値を使用するには、該当するパラメーターに空の文字列 ("") または $null の値を入力します。
セッション構成のプロパティを表示するには、Get-PSSessionConfiguration コマンドレットまたは WS-Management プロバイダーを使用します。WS-Management プロバイダーの詳細については、「get-help wsman」と入力してください。
パラメーター
-ApplicationBase <string>
AssemblyName パラメーターの値で指定されたアセンブリ ファイル (*.dll) のパスを変更します。
必須 |
false |
位置 |
named |
既定値 |
|
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
-AssemblyName <string>
構成に別のアセンブリ ファイルを指定します。構成の型を定義するアセンブリ ファイル (.dll) のパス (省略可能) およびファイル名を入力します。
名前だけを入力する場合は、ApplicationBase パラメーターの値にパスを入力できます。
必須 |
true |
位置 |
2 |
既定値 |
|
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
-ConfigurationTypeName <string>
構成に別の構成の型を指定します。指定する型には、System.Management.Automation.Remoting.PSSessionConfiguration クラスが実装されている必要があります。
"$null" または空の文字列を入力した場合、セッション構成には DefaultRemotePowerShellConfiguration クラスが使用されます。
必須 |
true |
位置 |
3 |
既定値 |
|
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
-Force
ユーザー プロンプトをすべて非表示にし、プロンプトを表示することなく WinRM サービスを再起動します。サービスを再起動すると、構成の変更が有効になります。
再起動せず、再起動プロンプトが表示されないようにするには、NoServiceRestart パラメーターを使用します。
必須 |
false |
位置 |
named |
既定値 |
|
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
-MaximumReceivedDataSizePerCommandMB <double>
このコンピューターに対して単一のリモート コマンドで送信できるデータ量の制限を変更します。データ サイズをメガバイト (MB) 単位で入力します。既定値は 50 MB です。
ConfigurationTypeName パラメーターで指定された構成の型でデータ サイズ制限が定義されている場合、構成の型で指定された制限が使用され、このパラメーターの値は無視されます。
必須 |
false |
位置 |
named |
既定値 |
50 |
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
-MaximumReceivedObjectSizeMB <double>
このコンピューターに対して単一のオブジェクトで送信できるデータ量の制限を変更します。データ サイズをメガバイト (MB) 単位で入力します。既定値は 10 MB です。
ConfigurationTypeName パラメーターで指定された構成の型でオブジェクトのサイズ制限が定義されている場合、構成の型で指定された制限が使用され、このパラメーターの値は無視されます。
必須 |
false |
位置 |
named |
既定値 |
10 |
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
-Name <string>
変更するセッション構成の名前を指定します。
このパラメーターを使用してセッション構成の名前を変更することはできません。
必須 |
true |
位置 |
1 |
既定値 |
|
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
-NoServiceRestart
WinRM サービスを再起動せず、サービスの再起動を確認するメッセージを非表示にします。
既定では、Set-PSSessionConfiguration コマンドを入力すると、新しいセッション構成を適用するために WinRM サービスを再起動するよう求められます。新しいセッション構成は、WinRM サービスを再起動するまで有効になりません。
確認メッセージを表示しないで WinRM サービスを再起動するには、Force パラメーターを使用します。WinRM サービスを手動で再起動するには、Restart-Service コマンドレットを使用します。
必須 |
false |
位置 |
named |
既定値 |
|
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
-SecurityDescriptorSDDL <string>
構成に別のセキュリティ記述子定義言語 (SDDL) 文字列を指定します。
この文字列は、新しいセッション構成を使用するために必要なアクセス許可を定義します。セッションでセッション構成を使用するには、少なくとも構成に対する "実行 (Invoke)" アクセス許可が必要です。
構成で既定のセキュリティ記述子を使用するには、空の文字列 ("") または $null の値を入力します。既定値は、WSMan: ドライブのルート SDDL です。
セキュリティ記述子が複雑な場合は、このパラメーターではなく、ShowSecurityDescriptorUI パラメーターを使用することを検討してください。これら 2 つのパラメーターは同じコマンドで使用することはできません。
必須 |
false |
位置 |
named |
既定値 |
|
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
-ShowSecurityDescriptorUI
セッション構成の新しい SDDL の作成に役立つプロパティ シートを表示します。プロパティ シートは、Set-PSSessionConfiguration コマンドを入力して WinRM サービスを再起動した後に表示されます。
構成のアクセス許可を設定する場合、セッションでセッション構成を使用するには少なくとも "実行 (Invoke)" アクセス許可が必要であることに注意します。
このパラメーターと SecurityDescriptorSDDL パラメーターを同じコマンドで使用することはできません。
必須 |
false |
位置 |
named |
既定値 |
|
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
-StartupScript <string>
構成のスタートアップ スクリプトを追加または変更します。Windows PowerShell スクリプトの完全修飾パスを入力します。指定されたスクリプトが、セッション構成を使用する新しいセッションで実行されます。
セッション構成からスタートアップ スクリプトを削除するには、空の文字列 ("") または $null の値を入力します。
スタートアップ スクリプトを使用して、ユーザーのセッションの詳細な構成を行うことができます。スクリプトでエラー (未終了エラーを含む) が発生した場合、セッションは作成されず、ユーザーの New-PSSession コマンドは失敗します。
必須 |
false |
位置 |
named |
既定値 |
|
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
-ThreadApartmentState <ApartmentState>
セッション内のスレッドのアパートメント状態設定を変更します。有効な値は、STA、MTA、および Unknown です。既定値は Unknown です。
必須 |
false |
位置 |
named |
既定値 |
ApartmentState.Unknown |
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
-ThreadOptions <PSThreadOptions>
構成のスレッド オプション設定を変更します。この設定は、セッションでコマンドが実行されたときのスレッドの作成方法および使用方法を定義します。有効な値は、Default、ReuseThread、UseCurrentThread、および UseNewThread です。既定値は UseCurrentThread です。
必須 |
false |
位置 |
named |
既定値 |
PSThreadOptions.UserCurrentThread |
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
-Confirm
コマンドを実行する前に確認メッセージを表示します。
必須 |
false |
位置 |
named |
既定値 |
|
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
-WhatIf
実際にコマンドを実行せずに、コマンドを実行すると何が起きるかを出力します。
必須 |
false |
位置 |
named |
既定値 |
|
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
<CommonParameters>
このコマンドレットは、次の共通パラメーターをサポートします: -Verbose、-Debug、-ErrorAction、-ErrorVariable、-OutBuffer、および -OutVariable。詳細については、次を参照してください: about_Commonparameters.
入力と出力
入力値の型は、コマンドレットへのパイプが可能なオブジェクトの型です。戻り値の型は、コマンドレットによって返されるオブジェクトの型です。
入力 |
None パイプを使用してこのコマンドレットに入力を渡すことはできません。 |
出力 |
Microsoft.WSMan.Management.WSManConfigLeafElement |
注
Windows Vista、Windows Server 2008、およびそれ以降のバージョンの Windows でこのコマンドレットを実行するには、[管理者として実行] オプションで Windows PowerShell を開く必要があります。
Set-PSSessionConfiguration コマンドレットは構成名を変更せず、WS-Management プロバイダーは Rename-Item コマンドレットをサポートしません。構成の名前を変更するには、Unregister-PSSessionConfiguration コマンドレットを使用して構成を削除した後に Register-PSSessionConfiguration コマンドレットを使用して新しいセッション構成の作成および登録を行います。
Set-PSSessionConfiguration コマンドレットを使用して、既定の Microsoft.PowerShell および Microsoft.PowerShell32 セッション構成を変更できます。これらのセッション構成は保護されていません。既定のセッション構成の元のバージョンに戻すには、Unregister-PSSessionConfiguration コマンドレットを使用して既定のセッション構成を削除した後に Enable-PSRemoting コマンドレットを使用して目的のバージョンを復元します。
例 1
C:\PS>set-pssessionconfiguration -name MaintenanceShell -threadApartmentState STA
説明
-----------
このコマンドは、MaintenanceShell 構成のスレッド アパートメント状態を STA に変更します。変更は、WinRM サービスを再起動したときに有効になります。
例 2
C:\PS>register-pssessionconfiguration -name AdminShell -assemblyName c:\shells\AdminShell.dll -configurationType AdminClass
C:\PS> set-pssessionconfiguration -name AdminShell -startupScript AdminConfig.ps1
C:\PS> set-pssessionconfiguration -name AdminShell -startupScript $null
説明
-----------
この例は、セッション構成を作成して変更する方法を示しています。
最初のコマンドは、Register-PSSessionConfiguration コマンドレットを使用して AdminShell 構成を作成します。
2 番目のコマンドは、Set-PSSessionConfiguration コマンドレットを使用して、AdminConfig.ps1 スクリプトを構成に追加します。変更は、WinRM を再起動したときに有効になります。
3 番目のコマンドは、構成から AdminConfig.ps1 スクリプトを削除します。このコマンドは、StartupScript パラメーターに $null の値が指定された Set-PSSessionConfiguration コマンドレットを使用します。
例 3
C:\PS>Set-PSSessionConfiguration -name foo -MaximumReceivedObjectSizeMB 20
WSManConfig: Microsoft.WSMan.Management\WSMan::localhost\Plugin\foo\InitializationParameters
ParamName ParamValue
--------- ----------
psmaximumreceivedobjectsizemb 20
"Restart WinRM service"
WinRM service need to be restarted to make the changes effective. Do you want to run the command "restart-service winrm"?
[Y] Yes [N] No [S] Suspend [?] Help (default is "Y"): y
説明
-----------
この例は、Set-PSSessionConfiguration コマンドレットからのサンプル出力を示しています。
この例の Set-PSSessionConfiguration コマンドは、MaximumReceivedObjectSizeMB プロパティの値を 20 に増加します。
Set-PSSessionConfiguration コマンドは、パラメーター名および新しい値を表示する Microsoft.WSMan.Management.WSManConfigLeafElement オブジェクトを返します。
WinRM サービスの再起動を求めるメッセージも表示されます。Set-PSSessionConfiguration の変更は、WinRM サービスを再起動するまで有効になりません。
例 4
C:\PS>set-pssessionconfiguration -name MaintenanceShell -startupScript c:\ps-test\Maintenance.ps1
WSManConfig: Microsoft.WSMan.Management\WSMan::localhost\Plugin\MaintenanceShell\InitializationParameters
ParamName ParamValue
--------- ----------
startupscript c:\ps-test\Mainte...
"Restart WinRM service"
WinRM service need to be restarted to make the changes effective. Do you want to run the command "restart-service winrm"?
[Y] Yes [N] No [S] Suspend [?] Help (default is "Y"): y
C:\PS> get-pssessionConfiguration maintenanceshell | format-list -property *
xmlns : https://schemas.microsoft.com/wbem/wsman/1/config/PluginConfiguration
Name : MaintenanceShell
Filename : %windir%\system32\pwrshplugin.dll
SDKVersion : 1
XmlRenderingType : text
lang : en-US
PSVersion : 2.0
startupscript : c:\ps-test\Maintenance.ps1
ResourceUri : https://schemas.microsoft.com/powershell/MaintenanceShell
SupportsOptions : true
ExactMatch : true
Capability : {Shell}
Permission :
C:\PS> dir wsman:\localhost\plugin\MaintenanceShell\InitializationParameters
ParamName ParamValue
--------- ----------
PSVersion 2.0
startupscript c:\ps-test\Maintenance.ps1
説明
-----------
このコマンドは、Set-PSSessionConfiguration コマンドの結果を表示するさまざまな方法を示します。
最初のコマンドは、Set-PSSessionConfiguration コマンドレットを使用して、MaintenanceShell 構成のスタートアップ スクリプトを Maintenance.ps1 に変更します。このコマンドの出力は変更を示し、WinRM サービスの再起動を求めるメッセージを表示します。これに対する応答は「y」(はい) です。
2 番目のコマンドは、Get-PSSessionConfiguration コマンドレットを使用して、MaintenanceShell セッション構成を取得します。このコマンドは、パイプライン演算子 (|) を使用してコマンドの結果を Format-List コマンドレットに送信し、セッション構成オブジェクトのすべてのプロパティを一覧表示します。
3 番目のコマンドは、WS-Management プロバイダーを使用して、MaintenanceShell 構成の初期化パラメーターを表示します。このコマンドは、Get-ChildItem コマンドレット (エイリアス = dir) を使用して、MaintenanceShell プラグインの InitializationParameters ノードの子項目を取得します。
WS-Management プロバイダーの詳細については、「get-help wsman」と入力してください。
関連項目
概念
about_Session_Configurations
Disable-PSSessionConfiguration
Enable-PSSessionConfiguration
Get-PSSessionConfiguration
Register-PSSessionConfiguration
Unregister-PSSessionConfiguration
WSMan Provider