Introdução

Muitas vezes nossos scripts precisam se conectar em servidores remotos e algumas dessas vezes esses servidores podem não fazer parte do mesmo domínio ou não fazer parte de nenhum domínio.

Nesses casos podemos utilizar o parâmetro Credential do comando Enter-PSSession para definir qual a credencial utilizada para a conexão.

Considerando que o servidor no qual vamos conectar já esteja configurado para aceitar conexões remotas Powershell, ( caso não esteja basta executar o comando winrm-quickconfig ), vamos então entender o que é necessário ser feito.

Configuração WSMAN Client

O Powershell utiliza o WSMAN para efetuar as conexões, ele vem configurado para conectar somente em maquinas do domínio, a forma mais rápida de permitir que o cliente WSMAN se conecte em servidores de fora do domínio é configurar o endereço desse servidor na propriedade TrustedHosts do WSMAN Client, podemos fazer isso com o comando:

Set-Item -path WSMAN:\localhost\Client\TrustedHosts -value “10.1.1.1″

Caso queira configurar o WSMAN Client para conectar em qualquer servidor basta colocar um “*”.

Conectando

Para conectar basta executar o cmdlet Enter-PSSession passando as credenciais remotas.

Enter-PSSession Servidor01 -Credential (Get-Credential)

Após inserir as credenciais a conexão é realizada com sucesso, para automatizar o processo você pode executar o cmdlet passando como parâmetro um objeto do tipo PSCredential, você pode verificar como nesse artigo.

http://social.technet.microsoft.com/wiki/pt-br/contents/articles/14035.autenticacao-via-powershell-utilizando-get-credential-e-pscredential.aspx

Referências

Você pode encontrar mais informações sobre WSMAN, Enter-PSSesion e Get-Credential nos links a baixo.

Get-Credential
Enter-PSSession
WSMAN

Este artigo foi originalmente publicado por:
Matheus Kamphorst | Blog: http://howtoserver.com