Unregister-PSSessionConfiguration

Elimina las configuraciones de sesión registradas del equipo.

Syntax

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

Description

Este cmdlet solo está disponible en la plataforma Windows.

El Unregister-PSSessionConfiguration cmdlet elimina las configuraciones de sesión registradas del equipo. Este cmdlet está diseñado para que los administradores del sistema administren configuraciones de sesión personalizadas para los usuarios.

Para que el cambio sea efectivo, Unregister-PSSessionConfiguration reinicia el servicio WinRM. Para evitar el reinicio, especifique el parámetro NoServiceRestart .

Si elimina accidentalmente las configuraciones predeterminadas Microsoft.PowerShell o Microsoft.PowerShell32 de sesión, use el Enable-PSRemoting cmdlet para restaurarlas. Para obtener más información, consulte about_Session_Configurations.

Ejemplos

Ejemplo 1: Eliminación de una configuración de sesión

En este ejemplo se elimina la MaintenanceShell configuración de sesión del equipo.

Unregister-PSSessionConfiguration -Name "MaintenanceShell"

Ejemplo 2: Eliminar una configuración de sesión y reiniciar el servicio WinRM

En este ejemplo, se elimina la MaintenanceShell configuración y se reinicia el servicio WinRM. El parámetro Force suprime todos los mensajes de usuario para reiniciar el servicio WinRM sin preguntar.

Unregister-PSSessionConfiguration -Name MaintenanceShell -Force

Ejemplo 3: Eliminar todas las configuraciones de sesión

En estos ejemplos se muestran dos maneras de eliminar todas las configuraciones de sesión en el equipo. Ambos comandos tienen el mismo efecto y se pueden usar indistintamente.

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

Ejemplo 4: Anular el registro sin reiniciar

En este ejemplo se muestra el efecto de usar el parámetro NoServiceRestart para evitar un reinicio del servicio que interrumpiría las sesiones del equipo.

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

Unregister-PSSessionConfiguration Elimina la configuración de la MaintenanceShell sesión. Sin embargo, dado que el comando usa el parámetro NoServiceRestart , el servicio WinRM no se reinicia y el cambio aún no es completamente efectivo.

A continuación, intenta Get-PSSessionConfiguration obtener la MaintenanceShell sesión. Dado que la sesión se ha quitado de la tabla de recursos WS-Management, Get-PSSessionConfiguration no puede devolverla.

El New-PSSession cmdlet crea una sesión mediante la MaintenanceShell configuración. El comando se ejecuta correctamente. A continuación, reiniciamos el servicio WinRM.

Por último, el New-PSSession cmdlet intenta crear una sesión que use la MaintenanceShell configuración. Esta vez, se produce un error en la sesión porque la MaintenanceShell configuración se eliminó al reiniciar el servicio WinRM.

Parámetros

-Confirm

Le solicita su confirmación antes de ejecutar el cmdlet.

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

-Force

Indica que el cmdlet no le pide confirmación y reinicia el servicio WinRM sin preguntar. Al reiniciar el servicio la configuración surte efecto.

Para evitar un reinicio y suprimir el mensaje de reinicio, use el parámetro NoServiceRestart .

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

-Name

Especifica los nombres de las configuraciones de sesión que se van a eliminar. Escriba un nombre de configuración de sesión o un patrón de nombre de configuración. Se permite el uso de caracteres comodín. Este parámetro es obligatorio.

También puede canalizar las configuraciones de sesión a Unregister-PSSessionConfiguration.

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

-NoServiceRestart

Indica que este cmdlet no reinicia el servicio WinRM y suprime el mensaje para reiniciar el servicio.

De forma predeterminada, al ejecutar un Unregister-PSSessionConfiguration comando, se le pedirá que reinicie el servicio WinRM para que el cambio sea efectivo. Hasta que se reinicie el servicio WinRM, los usuarios todavía pueden usar la configuración de sesión no registrada, aunque Get-PSSessionConfiguration no la encuentre.

Para reiniciar el servicio WinRM sin preguntar, especifique el parámetro Force . Para reiniciar manualmente el servicio WinRM, use el Restart-Service cmdlet .

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

-WhatIf

Muestra lo que sucedería si se ejecutara el cmdlet. El cmdlet no se ejecuta.

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

Entradas

Microsoft.PowerShell.Commands.PSSessionConfigurationCommands

Puede canalizar un objeto de configuración de sesión a este cmdlet.

Salidas

None

Este cmdlet no devuelve ningún resultado.

Notas

Este cmdlet solo está disponible en plataformas Windows.

Para ejecutar este cmdlet, debe iniciar PowerShell mediante la opción Ejecutar como administrador .