Compartilhar via


Disable-PSSessionConfiguration

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

Sintaxe

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

Description

O cmdlet Disable-PSSessionConfiguration 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 que foi projetado para ser usado pelos administradores do sistema para gerenciar configurações de sessão personalizadas para seus usuários.

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

No PowerShell 2.0, o cmdlet Disable-PSSessionConfiguration 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 microsoft.PowerShell, a configuração padrão usada para sessões. A menos que o usuário especifique uma configuração diferente, os usuários locais e remotos serão efetivamente impedidos de criar sessões que se conectem ao computador.

Para desabilitar 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 a 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 do do MaintenanceShell e do AdminShell. O operador de pipeline (|) envia os resultados de uma Get-PSSessionConfiguration para Disable-PSSessionConfiguration.

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

Exemplo 5: efeitos da desabilitação de uma configuração de sessão

Este exemplo mostra as permissões antes e depois de executar 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

Nota

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

Parâmetros

-Confirm

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

Tipo:SwitchParameter
Aliases:cf
Cargo:Named
Valor padrão:False
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-Force

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

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-Name

Especifica uma matriz de nomes de configurações de sessão para desabilitar. 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 desabilita a configuração da sessão Microsoft.PowerShell.

Tipo:String[]
Cargo:0
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:True
Aceitar caracteres curinga:True

-NoServiceRestart

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

Tipo:SwitchParameter
Cargo:Named
Valor padrão:None
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

-WhatIf

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

Tipo:SwitchParameter
Aliases:wi
Cargo:Named
Valor padrão:False
Obrigatório:False
Aceitar a entrada de pipeline:False
Aceitar caracteres curinga:False

Entradas

Microsoft.PowerShell.Commands.PSSessionConfigurationCommands

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

Saídas

None

Esse cmdlet não retorna nenhum objeto.

Observações

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