Partilhar via


Unregister-PSSessionConfiguration

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

Sintaxe

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

Description

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.

Tipo:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais: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 .

Tipo:SwitchParameter
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais: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.

Tipo:String
Position:0
Default value:None
Necessário:True
Aceitar entrada de pipeline:True
Aceitar carateres universais: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.

Tipo:SwitchParameter
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-WhatIf

Apresenta o que aconteceria mediante a execução do cmdlet. O cmdlet não é executado.

Tipo:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais: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

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