共用方式為


Disable-PSSessionConfiguration

停用本機電腦上的會話設定。

語法

Disable-PSSessionConfiguration
       [[-Name] <String[]>]
       [-Force]
       [-NoServiceRestart]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]

Description

Disable-PSSessionConfiguration Cmdlet 會停用本機電腦上的會話設定,以防止所有使用者使用會話設定在本機計算機上建立使用者管理的會話(PSSessions)。 這是一個進階 Cmdlet,其設計目的是由系統管理員用來管理其使用者的自定義會話設定。

從 PowerShell 3.0 開始,Disable-PSSessionConfiguration Cmdlet 會將會話組態的 enabled 設定WSMan:\localhost\Plugins\<SessionConfiguration>\Enabled設為 False。

在 PowerShell 2.0 中,Disable-PSSessionConfiguration Cmdlet 會將 Deny_All 專案新增至一或多個已註冊工作階段設定的安全性描述項。

如果沒有參數,Disable-PSSessionConfiguration 會停用 Microsoft.PowerShell 組態,這是會話所使用的預設組態。 除非使用者指定不同的組態,否則會有效防止本機和遠端使用者建立任何連線到計算機的會話。

若要停用電腦上的所有工作階段設定,請使用 Disable-PSRemoting

範例

範例 1:停用預設組態

此範例會停用 Microsoft.PowerShell 會話設定。

Disable-PSSessionConfiguration

範例 2:停用所有已註冊的會話設定

此範例會停用計算機上所有已註冊的會話設定。

Disable-PSSessionConfiguration -Name *

範例 3:依名稱停用會話設定

此範例會停用名稱開頭為 Microsoft 的所有會話組態。 Force 參數會隱藏來自 Cmdlet 的所有使用者提示。

Disable-PSSessionConfiguration -Name Microsoft* -Force

範例 4:使用管線停用會話設定

此範例會停用 MaintenanceShellAdminShell 會話設定。 管線運算子 (|) 會將 Get-PSSessionConfiguration 的結果傳送至 Disable-PSSessionConfiguration

Get-PSSessionConfiguration -Name MaintenanceShell, AdminShell | Disable-PSSessionConfiguration

範例 5:停用會話設定的效果

此範例顯示執行 Disable-PSSessionConfiguration 前後的許可權,以及停用會話設定的效果。

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

PS> Disable-PSSessionConfiguration -Name MaintenanceShell -Force
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

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_Troubleshooting Help topic.
+ CategoryInfo          : OpenError: (System.Manageme....RemoteRunspace:RemoteRunspace) [], PSRemotingTransportException
+ FullyQualifiedErrorId : PSSessionOpenFailed

注意

停用組態並不會阻止您使用 Set-PSSessionConfiguration Cmdlet 變更組態。 它只會防止使用組態。

參數

-Confirm

在執行 Cmdlet 之前,提示您進行確認。

類型:SwitchParameter
別名:cf
Position:Named
預設值:False
必要:False
接受管線輸入:False
接受萬用字元:False

-Force

強制命令執行,而不要求使用者確認。

類型:SwitchParameter
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-Name

指定要停用的工作階段組態名稱陣列。 輸入一或多個組態名稱。 允許通配符。 您也可以使用管線將包含群組態名稱或工作階段組態物件的字串傳送至 Disable-PSSessionConfiguration

如果您省略此參數,Disable-PSSessionConfiguration 會停用 Microsoft.PowerShell 會話設定。

類型:String[]
Position:0
預設值:None
必要:False
接受管線輸入:True
接受萬用字元:True

-NoServiceRestart

用來防止重新啟動 WSMan 服務。 不需要重新啟動服務以停用設定。

類型:SwitchParameter
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-WhatIf

顯示 Cmdlet 執行時會發生什麼事。 Cmdlet 未執行。

類型:SwitchParameter
別名:wi
Position:Named
預設值:False
必要:False
接受管線輸入:False
接受萬用字元:False

輸入

Microsoft.PowerShell.Commands.PSSessionConfigurationCommands

您可以使用管線將會話組態物件或包含工作階段組態名稱的字串傳送至此 Cmdlet。

輸出

None

此 Cmdlet 不會傳回任何物件。

備註

若要執行此 Cmdlet,您必須使用 [以 系統管理員身分執行] 選項 啟動 PowerShell。