Permitir que Enter-PSSession funcione na conta de sistemas locais

2

Eu tenho um script do PowerShell que cria uma sessão do Windows PowerShell (PSSession) em um servidor remoto por meio de Enter-PSSession , os dois servidores não estão conectados a um DOMAIN. Esse script é chamado de um programa que está sendo executado como um serviço na conta de sistemas locais. Por algum motivo, a execução do script do PowerShell como uma conta de sistemas locais faz com que o Enter-PSSession retorne um erro.

Por exemplo, quando executado a partir de uma conta de administrador local, o seguinte comando solicita minha senha e se conecta com êxito:

Enter-PSSession -ComputerName #### -Credential ####

No entanto, se eu executar o PowerShell usando uma conta de sistemas locais ou serviço de rede via psexec:

PsExec -i -s powershell.exe
PsExec -i -u "NT AUTHORITY\NetworkService" powershell.exe

Em seguida, tente o comando novamente, ele solicita minha senha e simplesmente retorna uma mensagem de erro:

Enter-PSSession : Connecting to remote server #### failed
with the following error message : WinRM cannot process the request. The
following error with errorcode 0x8009030d occurred while using Negotiate
authentication: A specified logon session does not exist. It may already have
been terminated.

Alguma ideia de como posso obter o comando Enter-PSSession para funcionar em uma conta de sistemas locais?

    
por ADarkDivideGem 05.02.2015 / 21:51

1 resposta

1

Você não pode usar Enter-PSSession em um script, ele foi destinado apenas a logons interativos. Use Invoke-Command em vez disso.

    
por 10.02.2015 / 16:18