Impede o computador de receber comandos remotos do Windows PowerShell.
Sintaxe
Disable-PSRemoting [-Force] [-Confirm] [-WhatIf] [<CommonParameters>]
Descrição
A função Disable-PSRemoting desabilita todas as configurações de sessão no computador local adicionando uma entrada "negar todos" aos seus descritores de segurança. Isso impede o computador local de receber comandos remotos.
Disable-PSRemoting não para o serviço WinRM e não impede que usuários do computador local estabeleçam sessões que se conectam a computadores remotos ou enviem comandos a outros computadores.
Para reabilitar as configurações de sessão, use os cmdlets Enable-PSRemoting ou Enable-PSSessionConfiguration.
Para executar essa função no Windows Vista, no Windows Server 2008 e em versões mais recentes do Windows, você deve abrir o Windows PowerShell com a opção "Executar como administrador".
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 |
-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 |
None Você não pode canalizar a entrada para este cmdlet. |
Saídas |
None Este cmdlet não retorna nenhum objeto. |
Observações
Uma configuração de sessão é um grupo de configurações que definem o ambiente para uma sessão. As configurações de sessão estão localizadas no computador remoto e são usadas por sessões locais e remotas que estabelecem conexão com o computador.
Cada sessão que estabelecer conexão com o computador deverá usar uma das configurações de sessão registradas no computador. Isso inclui as sessões persistentes que você cria usando os cmdlets New-PSSession ou Enter-PSSession, bem como as sessões temporárias que o Windows PowerShell cria quando você usa o parâmetro ComputerName de um cmdlet que usa tecnologia de comunicação remota WS-Management, como Invoke-Command. Negando acesso a todas as configurações de sessão, você impede efetivamente que todos os usuários estabeleçam sessões que se conectam ao computador.
Disable-PSRemoting equivale a "Disable-PSSessionConfiguration -name *.
Exemplo 1
C:\PS>disable-psremoting Descrição ----------- Esse comando desabilita todas as configurações de sessão no computador.
Exemplo 2
C:\PS>disable-psremoting -force Descrição ----------- Esse comando desabilita todas as configurações de sessão no computador sem aviso.
Exemplo 3
C:\PS>disable-psremoting -force C:\PS> new-pssession -computername localhost [localhost] Connecting to remote server failed with the following error message : Access is denied. For more information, see the about_Remote_Troub leshooting Help topic. + CategoryInfo : OpenError: (System.Manageme....RemoteRunspace:RemoteRunspace) [], PSRemotingTransportException + FullyQualifiedErrorId : PSSessionOpenFailed C:\PS> new-pssession -computername Server01 Id Name ComputerName State Configuration Availability -- ---- ------------ ----- ------------- ------------ 1 Session1 Server01... Opened Microsoft.PowerShell Available C:\PS> enable-pssessionConfiguration -name * -force C:\PS> new-pssession -computername localhost Id Name ComputerName State Configuration Availability -- ---- ------------ ----- ------------- ------------ 1 Session1 localhost Opened Microsoft.PowerShell Available Descrição ----------- Este exemplo mostra o efeito do uso de Disable-PSRemoting. O primeiro comando usa Disable-PSRemoting para desabilitar todas as configurações de sessão registradas no computador local. O segundo comando usa New-PSSession para criar uma sessão remota para o computador local (também conhecido como "loopback"). Como as configurações de sessão que a sessão requer estão desabilitadas, o comando falha. O terceiro comando usa o cmdlet New-PSSession para criar uma sessão do computador local para o computador remoto Server01. Esse comando, que usa as configurações de sessão no computador remoto, obtém êxito. O quarto comando usa o cmdlet Enable-PSSessionConfiguration para reabilitar todas as configurações de sessão no computador local. O comando usa um valor * (tudo) no parâmetro Name. O quinto comando tenta novamente estabelecer uma sessão de loopback usando o cmdlet New-PSSession. Desta vez o comando é bem-sucedido, pois a configuração de sessão que ele requer está habilitada.
Exemplo 4
C:\PS>disable-psremoting -force C:\PS> get-psSessionConfiguration | format-table -property name, permission -auto Name Permission ---- ---------- microsoft.powershell Everyone AccessDenied, BUILTIN\Administrators AccessAllowed microsoft.powershell32 Everyone AccessDenied, BUILTIN\Administrators AccessAllowed C:\PS> enable-psremoting -force WinRM already is set up to receive requests on this machine. WinRM already is set up for remote management on this machine. C:\PS>> Get-PSSessionConfiguration | ft name, Permission -auto Name Permission ---- ---------- microsoft.powershell BUILTIN\Administrators AccessAllowed microsoft.powershell32 BUILTIN\Administrators AccessAllowed Descrição ----------- Este exemplo mostra o efeito do uso de Disable-PSRemoting e Enable-PSRemoting nas configurações de sessão. O primeiro comando usa a função Disable-PSRemoting para desabilitar todas as configurações de sessão registradas. O parâmetro force suprime todos os avisos de usuário. O segundo comando usa o cmdlet Get-PSSessionConfiguration para exibir as configurações de sessão registradas no computador. O comando usa um operador de pipeline para enviar os resultados para um comando Format-Table, que exibe somente as propriedades Name e Permission das configurações em uma tabela. A tabela resultante mostra que todos têm permissão negada às configurações. O terceiro comando usa o cmdlet Enable-PSRemoting para reabilitar todas as configurações de sessão no computador. Você também poderá usar um comando "Enable-PsSessionConfiguration -name *". O comando usa o parâmetro Force para suprimir todos os avisos de usuário e para reiniciar o serviço WinRM sem aviso. O quarto comando usa Get-PSSessionConfiguration e Format-Table para exibir os nomes e as permissões das configurações de sessão. Os resultados mostram que os membros do grupo Administradores agora têm acesso às configurações de sessão.
See Also