Disable-PSSessionConfiguration

Desabilita as configurações de sessão no computador local.

Syntax

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

Description

O Disable-PSSessionConfiguration cmdlet desabilita as configurações de sessão no computador local, o que impede que todos os usuários usem as configurações de sessão para criar sessões gerenciadas pelo usuário (PSSessions) no computador local. Esse é um cmdlet avançado projetado para ser utilizado por administradores de sistema a fim de gerenciar configurações de sessão personalizadas para seus usuários.

A partir do PowerShell 3.0, o Disable-PSSessionConfiguration cmdlet define a configuração Enabled da configuração da sessão (WSMan:\localhost\Plugins\<SessionConfiguration>\Enabled) como False.

No PowerShell 2.0, o Disable-PSSessionConfiguration cmdlet adiciona uma entrada Deny_All ao descritor de segurança de uma ou mais configurações de sessão registradas.

Sem parâmetros, Disable-PSSessionConfiguration desabilita a configuração do Microsoft.PowerShell , a configuração padrão usada para sessões. A menos que o usuário especifique uma configuração diferente, tanto os usuários locais e remotos são efetivamente impedidos de criar quaisquer sessões que se conectem ao computador.

Para desativar todas as configurações de sessão no computador, use Disable-PSRemoting.

Exemplos

Exemplo 1: Desabilitar a configuração padrão

Este exemplo desabilita a configuração da sessão Microsoft.PowerShell .

Disable-PSSessionConfiguration

Exemplo 2: Desabilitar todas as configurações de sessão registradas

Este exemplo desabilita todas as configurações de sessão registradas no computador.

Disable-PSSessionConfiguration -Name *

Exemplo 3: Desabilitar configurações de sessão por nome

Este exemplo desabilita todas as configurações de sessão que têm nomes que começam com Microsoft. O parâmetro Force suprime todos os prompts do usuário do cmdlet.

Disable-PSSessionConfiguration -Name Microsoft* -Force

Exemplo 4: Desabilitar configurações de sessão usando o pipeline

Este exemplo desabilita as configurações de sessão MaintenanceShell e AdminShell . O operador de pipeline (|) envia os resultados de a Get-PSSessionConfiguration para Disable-PSSessionConfiguration.

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

Exemplo 5: Efeitos de desabilitar uma configuração de sessão

Este exemplo mostra as permissões antes e depois da execução Disable-PSSessionConfiguration e o efeito de desabilitar uma configuração de sessão.

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

Observação

Desabilitar a configuração não impede que você altere a configuração usando o Set-PSSessionConfiguration cmdlet. Ele apenas impede o uso da configuração.

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

Força o comando a ser executado sem solicitar a confirmação do usuário.

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

-Name

Especifica uma matriz de nomes de configurações de sessão a serem desabilitadas. Insira um ou mais nomes de configuração. Caracteres curinga são permitidos. Você também pode canalizar uma cadeia de caracteres que contém um nome de configuração ou um objeto de configuração de sessão para Disable-PSSessionConfiguration.

Se você omitir esse parâmetro, Disable-PSSessionConfiguration desabilitará a configuração da sessão Microsoft.PowerShell .

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

-NoServiceRestart

Usado para impedir a reinicialização do serviço WSMan. Não é necessário reiniciar o serviço para desativar a configuração.

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.

String

Você pode canalizar uma cadeia de caracteres que contém o nome de uma configuração de sessão para esse cmdlet.

Saídas

None

Esse cmdlet não retorna nenhuma saída.

Observações

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