У меня есть Powershell script, который будет запускаться через инструмент автоматизации против нескольких серверов. Он отлично работает на компьютерах Windows, поскольку удаленные вызовы используют учетную запись службы инструментов без необходимости запрашивать или подвергать учетные данные в коде. Этот script также работает с машинами Linux через SSH, используя пакет SharpSSH. SharpSSH автоматически не использует учетные данные пользователя Powershell, но требует либо имя пользователя и пароль, файл ключа RSA, либо объект PSCredential. Я не могу запросить учетные данные, используя Get-Credential, потому что он запускается через инструмент автоматизации. Я не хочу раскрывать имя пользователя и пароль в коде или сидеть там ключ RSA. Я хотел бы построить объект PSCredential от текущего пользователя Powershell (учетная запись службы). Попытка [System.Net.CredentialCache]:: DefaultNetworkCredentials показывает пробел, а [System.Security.Principal.WindowsIdentity]:: GetCurrent() не предоставляет объект или информацию, которые мне нужны.
Есть ли у кого-нибудь метод создания объекта PSCredential от текущего пользователя? Или, может быть, совершенно другая альтернатива этой проблеме?
Большое спасибо!