ローカル コンピューター上のセッション構成へのアクセスを拒否します。
構文
Disable-PSSessionConfiguration [[-Name] <string[]>] [-Force] [-確認] [-WhatIf] [<CommonParameters>]
説明
Disable-PSSessionConfiguration コマンドレットを実行すると、1 セッションの間、コンピューターのどのユーザーもセッション構成を使用できなくなります。これは、システム管理者がユーザーの代わりにカスタマイズされたセッション構成を管理するために使用する高度なコマンドレットです。
Disable-PSSessionConfiguration コマンドレットは、1 つまたは複数の登録済みセッション構成のセキュリティ記述子に "deny all" 設定を追加します。その結果、セッション構成の登録解除、表示、および変更が可能になりますが、セッション構成をセッションで使用することはできません。
パラメーターを指定しないで Disable-PSSessionConfiguration を実行すると、セッションで使用される既定の構成である Microsoft.PowerShell 構成が無効になります。ユーザーが別の構成を指定しない限り、ローカル ユーザーとリモート ユーザーのいずれも、このコンピューターに接続するセッションを一切作成できなくなります。
コンピューターに保存されているセッション構成をすべて無効にするには、Disable-PSRemoting を使用します。
パラメーター
-Force
ユーザー プロンプトをすべて非表示にします。既定では、各操作を確認するよう求めるメッセージが表示されます。
必須 |
false |
位置 |
named |
既定値 |
False |
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
-Name <string[]>
無効にするセッション構成の名前を指定します。1 つ以上の構成名を入力します。ワイルドカードを使用できます。パイプを使用して、構成名が含まれた文字列またはセッション構成オブジェクトを Disable-PSSessionConfiguration に渡すこともできます。
このパラメーターを省略した場合、Disable-PSSessionConfiguration は、Microsoft.PowerShell セッション構成を無効にします。
必須 |
false |
位置 |
1 |
既定値 |
Microsoft.PowerShell |
パイプライン入力を許可する |
true (ByValue, ByPropertyName) |
ワイルドカード文字を許可する |
true |
-確認
コマンドを実行する前に確認メッセージを表示します。
必須 |
false |
位置 |
named |
既定値 |
|
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
-WhatIf
実際にコマンドを実行せずに、コマンドを実行すると何が起きるかを出力します。
必須 |
false |
位置 |
named |
既定値 |
|
パイプライン入力を許可する |
false |
ワイルドカード文字を許可する |
false |
<CommonParameters>
このコマンドレットは、次の共通パラメーターをサポートします: -Verbose、-Debug、-ErrorAction、-ErrorVariable、-OutBuffer、および -OutVariable。Ô”¼š¤Ë¤Ä¤¤¤Æ¤Ï¡¢次を参照してください: about_Commonparameters.
入力と出力
入力値の型は、コマンドレットへのパイプが可能なオブジェクトの型です。戻り値の型は、コマンドレットによって返されるオブジェクトの型です。
入力 |
Microsoft.PowerShell.Commands.PSSessionConfigurationCommands#PSSessionConfiguration、System.String パイプを使用して、セッション構成オブジェクトまたはセッション構成の名前が含まれた文字列を Disable-PSSessionConfiguration に渡すことができます。 |
出力 |
None このコマンドレットはオブジェクトを返しません。 |
注
Windows Vista、Windows Server 2008、およびそれ以降のバージョンの Windows でこのコマンドレットを実行するには、Windows PowerShell を起動する際に [管理者として実行] を指定する必要があります。
例 1
C:\PS>Disable-PSSessionConfiguration 説明 ----------- このコマンドは、Microsoft.PowerShell セッション構成を無効にします。
例 2
C:\PS>disable-pssessionConfiguration -name * 説明 ----------- このコマンドは、コンピューターに保存されている登録済みセッション構成をすべて無効にします。
例 3
C:\PS>disable-pssessionConfiguration -name Microsoft* -force 説明 ----------- このコマンドは、名前が "Microsoft" で始まるセッション構成をすべて無効にします。また、Force パラメーターを使用して、このコマンドからのユーザー プロンプトをすべて非表示にします。
例 4
C:\PS>Get-PSSessionConfiguration -name MaintenanceShell, AdminShell | Disable-PSSessionConfiguration 説明 ----------- このコマンドは、MaintenanceShell と AdminShell の各セッション構成を無効にします。 また、パイプライン演算子 (|) を使用して、Get-PSSessionConfiguration コマンドの結果を Disable-PSSessionConfiguration に送ります。
例 5
C:\PS>Get-PSSessionConfiguration | format-table -property Name, Permission -auto Name Permission ---- ---------- MaintenanceShell BUILTIN\Administrators AccessAllowed microsoft.powershell BUILTIN\Administrators AccessAllowed microsoft.powershell32 BUILTIN\Administrators AccessAllowed C:\PS> Disable-PSSessionConfiguration -name MaintenanceShell -force C:\PS> Get-PSSessionConfiguration | format-table -property Name, Permission -auto Name Permission ---- ---------- MaintenanceShell Everyone AccessDenied, BUILTIN\Administrators AccessAllowed microsoft.powershell BUILTIN\Administrators AccessAllowed microsoft.powershell32 BUILTIN\Administrators AccessAllowed C:\PS> Set-PSSessionConfiguration -name MaintenanceShell -MaximumReceivedDataSizePerCommandMB 60 ParamName ParamValue --------- ---------- psmaximumreceived... 60 "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> new-pssession -computername localhost -configurationName MaintenanceShell [localhost] Connecting to remote server failed with the following error message : Access is denied. For more information, see the about_Remote_Troubl eshooting Help topic. + CategoryInfo : OpenError: (System.Manageme....RemoteRunspace:RemoteRunspace) [], PSRemotingTransportException + FullyQualifiedErrorId : PSSessionOpenFailed 説明 ----------- この例は、セッション構成を無効にしたときの結果を示しています。 最初のコマンドは、Get-SessionConfiguration コマンドレットと Format-Table コマンドレットを使用して、セッション構成オブジェクトの Name プロパティと Permission プロパティだけを表示します。この表形式によって、オブジェクトの値を確認しやすくなります。コマンドの結果には、Administrators グループのメンバーがセッション構成の使用を許可されていることが示されます。 2 番目のコマンドは、Disable-PSSessionConfiguration コマンドレットを使用して、MaintenanceShell セッション構成を無効にします。また、Force パラメーターを使用して、ユーザー プロンプトをすべて非表示にします。 3 番目のコマンドは最初のコマンドを繰り返します。コマンドの結果には、MaintenanceShell セッション構成へのアクセスが全ユーザーに対して拒否されているにもかかわらず、このセッション構成を表すオブジェクトを引き続き取得できることが示されます。"AccessDenied" エントリは、セキュリティ記述子の他のどのエントリよりも優先されます。 4 番目のコマンドは、Set-PSSessionConfiguration コマンドレットを使用して、MaintenanceShell セッション構成の MaximumDataSizePerCommandMB 設定を 60 に増加します。コマンドの結果には、セッション構成へのアクセスが全ユーザーに対して拒否されているにもかかわらず、コマンドが正常に実行されたことが示されます。 5 番目のコマンドは、セッションにおける MaintenanceShell セッション構成の使用を試行します。このコマンドは、New-PSSession コマンドレットを使用して新しいセッションを作成し、ConfigurationName パラメーターを使用して MaintenanceShell 構成を指定します。実行結果には、ユーザーがセッション構成に対するアクセスを拒否されたため、New-PSSession コマンドの実行が失敗したことが示されます。
関連項目