Share via


Unregister-PSSessionConfiguration

Exclui configurações de sessão registradas do computador.

Syntax

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

Description

Esse cmdlet só está disponível na plataforma Windows.

O Unregister-PSSessionConfiguration cmdlet exclui as configurações de sessão registradas do computador. Esse cmdlet foi projetado para que os administradores de sistema gerenciem configurações de sessão personalizadas para os usuários.

Para tornar a alteração efetiva, Unregister-PSSessionConfiguration reinicia o serviço WinRM. Para impedir a reinicialização, especifique o parâmetro NoServiceRestart .

Se você excluir acidentalmente as configurações padrão Microsoft.PowerShell ou Microsoft.PowerShell32 de sessão, use o Enable-PSRemoting cmdlet para restaurá-las. Para obter mais informações, consulte about_Session_Configurations.

Exemplos

Exemplo 1: Excluir uma configuração de sessão

Este exemplo exclui a MaintenanceShell configuração da sessão do computador.

Unregister-PSSessionConfiguration -Name "MaintenanceShell"

Exemplo 2: Excluir uma configuração de sessão e reiniciar o serviço WinRM

Neste exemplo, excluímos a MaintenanceShell configuração e reiniciamos o serviço WinRM. O parâmetro Force suprime todas as mensagens do usuário para reiniciar o serviço WinRM sem solicitar.

Unregister-PSSessionConfiguration -Name MaintenanceShell -Force

Exemplo 3: Excluir todas as configurações de sessão

Estes exemplos mostram duas maneiras de excluir todas as configurações de sessão no computador. Ambos os comandos têm o mesmo efeito e podem ser usados alternadamente.

Unregister-PSSessionConfiguration -Name *
Get-PSSessionConfiguration -Name * | Unregister-PSSessionConfiguration

Exemplo 4: Cancelar o registro sem reiniciar

Este exemplo mostra o efeito do uso do parâmetro NoServiceRestart para impedir uma reinicialização do serviço que interromperia qualquer sessão no computador.

PS> Unregister-PSSessionConfiguration -Name "MaintenanceShell" -NoServiceRestart
PS> Get-PSSessionConfiguration -Name "MaintenanceShell"

Get-PSSessionConfiguration -Name MaintenanceShell : No Session Configuration matches criteria "MaintenanceShell".
+ CategoryInfo          : NotSpecified: (:) [Write-Error], WriteErrorException
+ FullyQualifiedErrorId : Microsoft.PowerShell.Commands.WriteErrorException

PS> New-PSSession -ConfigurationName "MaintenanceShell"

Id Name      ComputerName    State    Configuration         Availability
-- ----      ------------    -----    -------------         ------------
1 Session1  localhost       Opened   MaintenanceShell      Available

PS> Restart-Service winrm
PS> New-PSSession -ConfigurationName MaintenanceShell

[localhost] Connecting to remote server failed with the following error message :
 The WS-Management service cannot process the request.
 The resource URI (http://schemas.microsoft.com/powershell/MaintenanceShell) was not found in the WS-Management catalog.
 The catalog contains the metadata that describes resources, or logical endpoints.
 For more information, see the about_Remote_Troubleshooting Help topic.
 + CategoryInfo          : OpenError: (System.Manageme....RemoteRunspace:RemoteRunspace) [], PSRemotingTransportException
 + FullyQualifiedErrorId : PSSessionOpenFailed

O Unregister-PSSessionConfiguration exclui a configuração da MaintenanceShell sessão. No entanto, como o comando usa o parâmetro NoServiceRestart , o serviço WinRM não é reiniciado e a alteração ainda não é completamente eficaz.

Em seguida, o Get-PSSessionConfiguration tenta obter a MaintenanceShell sessão. Como a sessão foi removida da tabela de recursos do WS-Management, Get-PSSessionConfiguration não é possível retorná-la.

O New-PSSession cmdlet cria uma sessão usando a MaintenanceShell configuração. O comando é bem-sucedido. Em seguida, reiniciamos o serviço WinRM.

Finalmente, o New-PSSession cmdlet tenta criar uma sessão que usa a MaintenanceShell configuração. Desta vez, a sessão falha porque a MaintenanceShell configuração foi excluída quando o serviço WinRM foi reiniciado.

Parâmetros

-Confirm

Solicita sua confirmação antes de executar o cmdlet.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Force

Indica que o cmdlet não solicita confirmação e reinicia o serviço WinRM sem solicitar. Reiniciar o serviço faz a com que a alteração da configuração entre em vigor.

Para impedir uma reinicialização e suprimir o prompt de reinicialização, use o parâmetro NoServiceRestart .

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Name

Especifica os nomes das configurações de sessão a excluir. Insira um nome de configuração de sessão ou um padrão de nome de configuração. Caracteres curinga são permitidos. Este parâmetro é obrigatório.

Você também pode canalizar as configurações de uma sessão para Unregister-PSSessionConfigurationo .

Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:True

-NoServiceRestart

Indica que esse cmdlet não reinicia o serviço WinRM e suprime o prompt para reiniciar o serviço.

Por padrão, quando você executa um Unregister-PSSessionConfiguration comando, você será solicitado a reiniciar o serviço WinRM para tornar a alteração efetiva. Até que o serviço WinRM seja reiniciado, os usuários ainda podem usar a configuração de sessão não registrada, mesmo que Get-PSSessionConfiguration não a encontre.

Para reiniciar o serviço WinRM sem solicitar, especifique o parâmetro Force . Para reiniciar o serviço WinRM manualmente, use o Restart-Service cmdlet.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

Mostra o que aconteceria se o cmdlet fosse executado. O cmdlet não é executado.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Entradas

Microsoft.PowerShell.Commands.PSSessionConfigurationCommands

Você pode canalizar um objeto de configuração de sessão para esse cmdlet.

Saídas

None

Esse cmdlet não retorna nenhuma saída.

Observações

Esse cmdlet só está disponível em plataformas Windows.

Para executar esse cmdlet, você deve iniciar o PowerShell usando a opção Executar como administrador .