Unregister-PSSessionConfiguration

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

Syntax

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

Description

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

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

Para tornar a alteração efetiva, Unregister-PSSessionConfiguration reinicia o serviço WinRM. Para evitar 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 de forma intercambiável.

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 de serviço que interromperia quaisquer sessões 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 a 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 torna a alteração de configuração efetiva.

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 serem excluídas. 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 o Unregister-PSSessionConfiguration.

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ê é 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

Apresenta o que aconteceria mediante a execução do cmdlet. 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 este cmdlet.

Saídas

None

Este cmdlet não retorna nenhuma saída.

Notas

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

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