Назад | Перейти на главную страницу

Разрешить Enter-PSSession работать с учетной записью локальной системы

У меня есть сценарий PowerShell, который создает сеанс Windows PowerShell (PSSession) на удаленном сервере через Enter-PSSession, оба сервера не подключены к ДОМЕНУ. Этот сценарий вызывается из программы, которая работает как служба под учетной записью локальной системы. По какой-то причине запуск сценария PowerShell в качестве учетной записи локальной системы вызывает Enter-PSSession чтобы вернуть ошибку.

Например, при запуске из учетной записи локального администратора следующая команда запрашивает мой пароль и успешно подключается:

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

Однако, если я запускаю PowerShell, используя учетную запись локальной системы или сетевой службы через psexec:

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

Затем попробуйте команду еще раз, она запрашивает мой пароль и просто возвращает сообщение об ошибке:

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.

Любая идея, как я могу получить Enter-PSSession команда для работы под учетной записью локальной системы?

Вы не можете использовать Enter-PSSession в сценарии он был предназначен только для интерактивного входа в систему. Использовать Invoke-Command вместо.