Get-ChildItem não retorna nenhum arquivo por meio de comunicação remota, mas funciona corretamente quando conectado em modo interativo no sistema remoto


0

Acabei de começar a trabalhar com os recursos remotos do PowerShell 3.0. Meu problema atual é que eu posso fazer login na máquina remota "secondmachine" e executar o comando

gci "\\ thirdmachine \ share"

E isso funciona corretamente. No entanto, logado em "firstmachine", quando eu executo o comando

invoke-command -ComputerName secondmachine -Credential "mydomain \ myusername" -ScriptBlock {gci "\\ thirdmachine \ share"}

Este comando solicita a senha, executa, mas nenhum arquivo é retornado. Além disso, nenhum erro é retornado.

Note que este é um exemplo de um roteiro maior, e o sintoma inicial foi que depois $var = gci "\\thirdmachine\share", $ var.Length foi zero.

Se eu tivesse acesso de administrador a "thirdmachine", eu veria as auditorias no log de eventos de segurança para ver o que aconteceu, mas não tenho esse acesso. Como posso solucionar esse problema? Existe uma maneira de eu ver quais credenciais estão sendo usadas quando o comando realmente é executado em "secondmachine"?

Respostas:


1

O que você está fazendo é basicamente second-hopping (delegação de segurança) para terceira maquina .

Por padrão, esse recurso está desativado por motivos de segurança, mas pode ser ativado nas máquinas de terminal usando o comando

Enable-WSManCredSSP –Role client –DelegateComputer *
Enable-WSManCredSSP –Role server

Uma explicação mais técnica pode ser encontrada aqui: http://technet.microsoft.com/pt-br/magazine/jj853299.aspx


Obrigado, isso me leva na direção certa, e posso aceitá-lo como a resposta. Mas eu ainda não tenho uma solução final, então vou adiar a aceitação por agora.
John Saunders
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.