Compartilhar via


Disable-PSSessionConfiguration

Nega acesso às configurações de sessão no computador local.

Sintaxe

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

Descrição

O cmdlet Disable-PSSessionConfiguration impede todos os usuários do computador de usar a configuração de sessão em uma sessão. Esse é um cmdlet avançado, projetado para ser usado pelos administradores de sistema para gerenciar as configurações de sessão personalizadas para seus usuários.

O cmdlet Disable-PSSessionConfiguration adiciona uma configuração "negar todos" ao descritor de segurança de uma ou mais configurações de sessão registradas. Como resultado, você poderá cancelar o registro, exibir e alterar as configurações, mas não poderá usá-las em uma sessão.

Sem parâmetros, Disable-PSSessionConfiguration desabilita a configuração Microsoft.PowerShell, que é 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 estarã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.

Parâmetros

-Force

Suprime todos os avisos de usuário. Por padrão, você receberá um aviso para confirmar cada operação.

Necessário?

false

Posição?

named

Valor padrão

False

Aceitar entrada do pipeline?

false

Aceitar caracteres curinga?

false

-Name <string[]>

Especifica os nomes de configurações de sessão a serem desabilitadas. Insira um ou mais nomes de configuração. Os caracteres curinga são permitidos. Você também poderá canalizar uma cadeia de caracteres que contenha 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 de sessão Microsoft.PowerShell.

Necessário?

false

Posição?

1

Valor padrão

Microsoft.PowerShell

Aceitar entrada do pipeline?

true (ByValue, ByPropertyName)

Aceitar caracteres curinga?

true

-Confirm

Solicita confirmação antes da execução do comando.

Necessário?

false

Posição?

named

Valor padrão

Aceitar entrada do pipeline?

false

Aceitar caracteres curinga?

false

-WhatIf

Descreve o que aconteceria se você executasse o comando, sem executá-lo de fato.

Necessário?

false

Posição?

named

Valor padrão

Aceitar entrada do pipeline?

false

Aceitar caracteres curinga?

false

<CommonParameters>

Esse cmdlet oferece suporte aos parâmetros comuns: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer e -OutVariable. Para obter mais informações, consulte about_Commonparameters.

Entradas e saídas

O tipo de entrada é o tipo dos objetos que você pode canalizar para o cmdlet. O tipo de retorno é o tipo dos objetos que o cmdlet retorna.

Entradas

Microsoft.PowerShell.Commands.PSSessionConfigurationCommands#PSSessionConfiguration, System.String

Você poderá canalizar um objeto de configuração de sessão ou uma cadeia de caracteres que contenha o nome de uma configuração de sessão para Disable-PSSessionConfiguration.

Saídas

Nenhum

Este cmdlet não retorna nenhum objeto.

Observações

Para executar esse cmdlet no Windows Vista, no Windows Server 2008 e em versões mais recentes do Windows, inicie o Windows PowerShell com a opção "Executar como administrador".

Exemplo 1

C:\PS>Disable-PSSessionConfiguration

Descrição
-----------
Esse comando desabilita a configuração de sessão Microsoft.PowerShell.





Exemplo 2

C:\PS>disable-pssessionConfiguration -name *

Descrição
-----------
Esse comando desabilita todas as configurações de sessão registradas no computador.





Exemplo 3

C:\PS>disable-pssessionConfiguration -name Microsoft* -force

Descrição
-----------
Esse comando desabilita todas as configurações de sessão cujos nomes comecem com "Microsoft". Ele usa o parâmetro Force para suprimir todos os avisos de usuário do comando.





Exemplo 4

C:\PS>Get-PSSessionConfiguration -name MaintenanceShell, AdminShell | Disable-PSSessionConfiguration

Descrição
-----------
Esse comando desabilita as configurações de sessão MaintenanceShell e AdminShell. 

O comando usa um operador de pipeline (|) para enviar os resultados de um comando Get-PSSessionConfiguration para Disable-PSSessionConfiguration.





Exemplo 5

C:\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

C:\PS> Disable-PSSessionConfiguration -name MaintenanceShell -force

C:\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

C:\PS> Set-PSSessionConfiguration -name MaintenanceShell -MaximumReceivedDataSizePerCommandMB 60

ParamName            ParamValue
---------            ----------
psmaximumreceived... 60

"Restart WinRM service"
WinRM service need to be restarted to make the changes effective. Do you want to run the command "restart-service winrm"?
[Y] Yes  [N] No  [S] Suspend  [?] Help (default is "Y"): y


C:\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_Troubl
eshooting Help topic.
    + CategoryInfo          : OpenError: (System.Manageme....RemoteRunspace:RemoteRunspace) [], PSRemotingTransportException
    + FullyQualifiedErrorId : PSSessionOpenFailed

Descrição
-----------
Este exemplo mostra o efeito de desabilitar uma configuração de sessão.

O primeiro comando usa os cmdlets Get-SessionConfiguration e Format-Table para exibir somente as propriedades Name e Permission dos objetos de configuração de sessão. Este formato de tabela facilita a consulta dos valores dos objetos. Os resultados mostram que os membros do grupo Administradores têm permissão para usar as configurações de sessão.

O segundo comando usa o cmdlet Disable-PSSessionConfiguration para desabilitar a configuração de sessão MaintenanceShell. Ele usa o parâmetro Force para suprimir todos os avisos de usuário.

O terceiro comando repete o primeiro. Os resultados mostram que você ainda poderá obter o objeto que representa a configuração de sessão MaintenanceShell, mesmo que todos tenham o acesso negado a ele. A entrada "AccessDenied" tem precedência sobre todas as outras no descritor de segurança.

O quarto comando usa o cmdlet Set-PSSessionConfiguration para aumentar a configuração MaximumDataSizePerCommandMB para 60 na configuração de sessão MaintenanceShell. Os resultados mostram que o comando obteve êxito embora todos tivessem o acesso à configuração negado.

O quinto comando tenta usar a configuração da sessão MaintenanceShell em uma sessão. Ele usa o cmdlet New-PSSession para criar uma nova sessão e o parâmetro ConfigurationName para especificar a configuração MaintenanceShell. Os resultados mostram que o comando New-PSSession falha porque o usuário tem acesso negado à configuração.





Consulte também

Conceitos

about_Session_Configurations
Enable-PSSessionConfiguration
Get-PSSessionConfiguration
Register-PSSessionConfiguration
Set-PSSessionConfiguration
Unregister-PSSessionConfiguration
WSMan Provider