Я пишу скрипт сборки PowerShell, который запускается на сервере сборки (GitLab Runner) с правами администратора.Я не контролирую, как этот скрипт запускается.Из этого скрипта мне нужно запустить файл .exe.
К сожалению, этот исполняемый файл хочет кэшировать некоторые файлы в своей папке AppData.Поскольку исполняемый файл запускается с правами администратора, папка AppData преобразуется в C:\Windows\system32\config\systemprofile\AppData\
вместо C:\Users\User\AppData\
, и это вызывает непредвиденное поведение.
Существует ли способ запустить исполняемый файл как обычный пользователь Windows из сценария, которыйзапускается системной службой?
Внутри скрипта я проверяю пользователя следующим образом:
[System.Security.Principal.WindowsIdentity]::GetCurrent().Name
NT AUTHORITY\SYSTEM