Сбой ConvertTo-SecureString в сеансе удаленного взаимодействия - PullRequest
0 голосов
/ 11 января 2019

Функция, содержащая вызов для ConvertTo-SecureString, не работает в сеансе удаленного взаимодействия Powershell при запуске с использованием Invoke-Command.

Я создал новую конфигурацию PSSessionConfiguration со свойством RunAsVirtualAccount = $true. Эта конфигурация сеанса загружает модуль, содержащий функцию foo, которая выполняет вызов Convert-ToSecureString -AsPlaintext -Force. При попытке запустить foo удаленно, используя

Invoke-Command -Session $PSSession `
               -Scriptblock { foo }

Я получаю исключение:

Операция защиты данных не удалась. Это может быть вызвано тем, что профиль пользователя не загружен для пользовательского контекста текущего потока, что может быть в случае, когда поток имитирует

Защищенная строка впоследствии используется для создания [PSCredential] объекта.

Я видел это сообщение в блоге о зависимости ConvertTo-SecureString от DPAPI и профиле пользователя, что соответствует возвращенному исключению. Но он не содержит параметров разрешения.

...