Connect-WSMan
Conecta ao serviço WinRM em um computador remoto.
Sintaxe
Connect-WSMan [-ApplicationName <string>] [-ComputerName <string>] [-Port <int>] [-UseSSL] [-Authentication <Authentication>] [-ComputerName <string>] [-Credential <PSCredential>] [-Port <int>] [-SessionOption <hashtable>] [<CommonParameters>]
Connect-WSMan [-ConnectionURI <Uri>] [-Authentication <Authentication>] [-ComputerName <string>] [-Credential <PSCredential>] [-Port <int>] [-SessionOption <hashtable>] [<CommonParameters>]
Descrição
O cmdlet Connect-WSMan conecta-se com o serviço WinRM em um computador remoto e estabelece uma conexão persistente com o computador remoto. Você pode usar este cmdlet no contexto do provedor WS-Management para conectar-se ao serviço WinRM em um computador remoto. No entanto, você também pode usar este cmdlet para conectar-se ao serviço WinRM em um computador remoto antes de alterar para o provedor WS-Management. O computador remoto aparecerá no diretório raiz do provedor WS-Management.
Para obter mais informações sobre como desconectar-se do serviço WinRM em um computador remoto, consulte Disconnect-WSMan.
Parâmetros
-ApplicationName <string>
Especifica o nome do aplicativo na conexão. O valor padrão do parâmetro ApplicationName é "WSMAN". O identificador completo para o ponto de extremidade remoto está no seguinte formato:
<transporte>://<servidor>:<porta>/<NomeAplicativo>
Por exemplo:
http://server01:8080/WSMAN
O IIS (Internet Information Services), que hospeda a sessão, encaminha as solicitações com esse ponto de extremidade ao aplicativo especificado. Esta configuração padrão "WSMAN" é adequada para a maioria dos usos. Este parâmetro foi desenvolvido para ser usado quando vários computadores estabelecem conexões remotas com um computador que executa o Windows PowerShell. Nesse caso, o IIS hospeda o protocolo WS-Management por questões de eficiência.
Necessário? |
false |
Posição? |
named |
Valor padrão |
wsman |
Aceitar entrada do pipeline? |
false |
Aceitar caracteres curinga? |
false |
-Authentication <Authentication>
Especifica o mecanismo de autenticação a ser usado no servidor. Os valores possíveis são:
- Basic: é um esquema em que o nome de usuário e a senha são enviados como texto não criptografado para o servidor ou o proxy.
- Default: usa o método de autenticação implementado pelo protocolo WS-Management. Este é o padrão.
- Digest: é um esquema de desafio-resposta que usa uma cadeia de caracteres de dados especificada pelo servidor para o desafio.
- Kerberos: o computador cliente e o servidor se autenticam mutuamente usando certificados Kerberos.
- Negotiate: é um esquema desafio-resposta que negocia com o servidor ou o proxy para determinar o esquema a ser usado para autenticação. Por exemplo, o valor desse parâmetro permite a negociação para determinar se o protocolo Kerberos ou NTLM é usado.
- CredSSP: use a autenticação CredSSP (Credential Security Service Provider), que permite ao usuário delegar credenciais. Esta opção é projetada para comandos executados em um computador remoto, mas que coletam dados ou executam comandos adicionais em outros computadores remotos.
Cuidado: o CredSSP delega as credenciais do usuário do computador local para um computador remoto. Essa prática aumenta o risco de segurança da operação remota. Se o computador remoto estiver comprometido, quando as credenciais forem passadas para ele, elas poderão ser usadas para controlar a sessão de rede.
Necessário? |
false |
Posição? |
named |
Valor padrão |
Default |
Aceitar entrada do pipeline? |
false |
Aceitar caracteres curinga? |
false |
-ComputerName <string>
Especifica o computador em relação ao qual você deseja executar a operação de gerenciamento. O valor pode ser um nome de domínio totalmente qualificado, um nome NetBIOS ou um endereço IP. Use o nome do computador local, o host local ou um ponto (.) para especificar o computador local. O padrão é o computador local. Quando o computador remoto está em um domínio diferente do usuário, um nome de domínio totalmente qualificado deve ser usado. É possível canalizar um valor para este parâmetro para o cmdlet.
Necessário? |
false |
Posição? |
named |
Valor padrão |
localhost |
Aceitar entrada do pipeline? |
false |
Aceitar caracteres curinga? |
false |
-ConnectionURI <Uri>
Especifica o ponto de extremidade da conexão. O formato dessa cadeia de caracteres é:
<Transporte>://<Servidor>:<Porta>/<NomeAplicativo>.
A cadeia de caracteres a seguir é um valor formatado corretamente para o parâmetro:
http://Server01:8080/WSMAN. O URI deve ser totalmente qualificado.
Necessário? |
false |
Posição? |
named |
Valor padrão |
|
Aceitar entrada do pipeline? |
false |
Aceitar caracteres curinga? |
false |
-Credential <PSCredential>
Especifica uma conta de usuário com permissão para executar essa ação. O padrão é o usuário atual. Digite um nome de usuário, como "Usuário01", "Domínio01\Usuário01" ou "Usuário@Domínio.com”. Ou insira um objeto PSCredential, como aquele retornado pelo cmdlet Get-Credential. Quando você digitar um nome de usuário, uma senha será solicitada.
Necessário? |
false |
Posição? |
named |
Valor padrão |
|
Aceitar entrada do pipeline? |
false |
Aceitar caracteres curinga? |
false |
-OptionSet <hashtable>
Passa um conjunto de opções para o serviço, de modo a modificar ou refinar a natureza da solicitação. Essas opções são semelhantes às usadas em shells de linha de comando por serem específicas ao serviço. Qualquer quantidade de opções pode ser especificada.
O exemplo a seguir demonstra a sintaxe para passar os valores 1, 2 e 3 para os três parâmetros a, b e c:
-OptionSet @{a=1;b=2;c=3}
Necessário? |
|
Posição? |
named |
Valor padrão |
|
Aceitar entrada do pipeline? |
false |
Aceitar caracteres curinga? |
false |
-Port <int>
Especifica a porta que será usada quando o cliente se conectar ao serviço WinRM. Quando o transporte for HTTP, a porta padrão será 80. Quando o transporte for HTTPS, a porta padrão será 443. Quando você usar HTTPS como transporte, o valor do parâmetro ComputerName deverá corresponder ao CN (nome comum) do certificado de servidor. No entanto, se o parâmetro SkipCNCheck for especificado como parte do parâmetro SessionOption, o nome comum do certificado do servidor não precisará coincidir como o nome do host do servidor. O parâmetro SkipCNCheck deve ser usado somente por computadores confiáveis.
Necessário? |
false |
Posição? |
named |
Valor padrão |
|
Aceitar entrada do pipeline? |
false |
Aceitar caracteres curinga? |
false |
-SessionOption <hashtable>
Define um conjunto de opções estendidas para a sessão WS-Management. Digite um objeto SessionOption que você cria usando o cmdlet New-WSManSessionOption. Para obter mais informações sobre as opções disponíveis, consulte New-WSManSessionOption.
Necessário? |
false |
Posição? |
named |
Valor padrão |
|
Aceitar entrada do pipeline? |
false |
Aceitar caracteres curinga? |
false |
-UseSSL
Especifica que o protocolo SSL deve ser usado para estabelecer uma conexão com o computador remoto. Por padrão, SSL não é usado.
O WS-Management criptografa todo o conteúdo do Windows PowerShell transmitido pela rede. O parâmetro UseSSL permite especificar a proteção adicional de HTTPS em vez de HTTP. Se o SSL não estiver disponível na porta usada para a conexão e você especificar esse parâmetro, o comando falhará.
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 |
Nenhum Este cmdlet não aceita entrada. |
Saídas |
Nenhum Este cmdlet não gera saída. |
Observações
Você pode executar comandos de gerenciamento ou consultar dados de gerenciamento em um computador remoto sem criar uma sessão do WS-Management. Para isso, use os comandos do parâmetro ComputerName de Invoke-WSManAction e Get-WSManInstance. Quando você usa o parâmetro ComputerName, o Windows PowerShell cria uma conexão temporária que é usada para o comando único. Depois que o comando for executado, a conexão será fechada.
Exemplo 1
C:\PS>Connect-WSMan -computer server01
PS C:\Users\testuser> cd wsman:
PS WSMan:\>
PS WSMan:\> dir
WSManConfig: Microsoft.WSMan.Management\WSMan::WSMan
ComputerName Type
------------ ----
localhost Container
server01 Container
Descrição
-----------
Este comando cria uma conexão com o computador remoto server01.
O cmdlet Connect-WSMan é geralmente usado no contexto do provedor WS-Management para estabelecer conexão com um computador remoto, neste caso o computador Server01. No entanto, você pode usar o cmdlet para estabelecer conexões com computadores remotos antes de alterar para o provedor WS-Management. Essas conexões aparecerão na lista de ComputerName.
Exemplo 2
C:\PS>$cred = Get-Credential Administrator
Connect-WSMan -computer server01 -credential $cred
PS C:\Users\testuser> cd wsman:
PS WSMan:\>
PS WSMan:\> dir
WSManConfig: Microsoft.WSMan.Management\WSMan::WSMan
ComputerName Type
------------ ----
localhost Container
server01 Container
Descrição
-----------
Este comando cria uma conexão com o server01 do sistema remoto que usa as credenciais de conta do Administrador.
O primeiro comando usa o cmdlet Get-Credential para obter as credenciais de Administrador e armazená-las na variável $cred. O cmdlet Get-Credential solicita ao usuário um nome de usuário e senha. A solicitação ao usuário é feita em uma caixa de diálogo
ou na linha de comando, dependendo das configurações de Registro do sistema.
O segundo comando usa o parâmetro Credential para passar as credenciais armazenadas em $cred para Connect-WSMan. Connect-WSMan e conecta-se ao server01 do sistema remoto usando as credenciais de Administrador.
O cmdlet Connect-WSMan é geralmente usado no contexto do provedor WS-Management para estabelecer conexão com um computador remoto, neste caso Server01. Porém, o cmdlet pode ser usado para estabelecer conexões com computadores remotos antes de alterar para o provedor WS-Management, e essas conexões aparecerão na lista de ComputerName.
Exemplo 3
C:\PS>Connect-WSMan -computer server01 -port 80
PS C:\Users\testuser> cd wsman:
PS WSMan:\>
PS WSMan:\> dir
WSManConfig: Microsoft.WSMan.Management\WSMan::WSMan
ComputerName Type
------------ ----
localhost Container
server01 Container
Descrição
-----------
Este comando cria uma conexão com o computador remoto server01 na porta 80.
O cmdlet Connect-WSMan é geralmente usado no contexto do provedor WS-Management para estabelecer conexão com um computador remoto, neste caso o computador Server01. No entanto, você pode usar o cmdlet para estabelecer conexões com computadores remotos antes de alterar para o provedor WS-Management. Essas conexões aparecerão na lista de ComputerName.
Exemplo 4
C:\PS>$a = New-WSManSessionOption -operationtimeout 30000
Connect-WSMan -computer server01 -sessionoption $a
PS C:\Users\testuser> cd wsman:
PS WSMan:\>
PS WSMan:\> dir
WSManConfig: Microsoft.WSMan.Management\WSMan::WSMan
ComputerName Type
------------ ----
localhost Container
server01 Container
Descrição
-----------
Este comando cria uma conexão com o computador remoto server01 usando as opções de conexão que são definidas no comando New-WSManSessionOption.
O primeiro comando usa o cmdlet New-WSManSessionOption para armazenar um conjunto de opções de configuração de conexão na variável $a. Neste caso, as opções da sessão definem um tempo limite de conexão de 30 segundos (30.000 milissegundos).
O segundo comando usa o parâmetro SessionOption para passar as credenciais armazenadas na variável $a para Connect-WSMan. Em seguida, Connect-WSMan conecta ao computador remoto server01 usando as opções de sessão especificadas.
O cmdlet Connect-WSMan é geralmente usado no contexto do provedor WS-Management para estabelecer conexão com um computador remoto, neste caso o computador Server01. No entanto, você pode usar o cmdlet para estabelecer conexões com computadores remotos antes de alterar para o provedor WS-Management. Essas conexões aparecerão na lista de ComputerName.
Consulte também
Conceitos
Disable-WSManCredSSP
Disconnect-WSMan
Enable-WSManCredSSP
Get-WSManCredSSP
Get-WSManInstance
Invoke-WSManAction
New-WSManInstance
New-WSManSessionOption
Remove-WSManInstance
Set-WSManInstance
Set-WSManQuickConfig
Test-WSMan