Powershell脚本显示$ env:username是本地系统,即使该脚本是由以用户帐户运行的进程执行的

时间:2020-06-11 19:30:22

标签: powershell windows-services createprocessasuser

我有一个运行和管理多个进程的Windows服务。 根据任务管理器的“详细信息”选项卡,所有进程都在用户帐户下运行。因此,其中一个过程是执行PowerShell脚本来执行一些需要本地用户帐户的操作。

我尝试登录$env:username,它说PowerShell脚本是在系统帐户下执行的。

如果在Windows服务没有任何帮助的情况下手动启动该过程,那么PowerShell脚本将成功执行,并且还会记录$env:username是本地登录的用户帐户。

注意:Windows服务正在使用CreateProcessAsUser方法启动那些进程,该方法应该以本地用户帐户启动子进程。但是似乎任务管理器似乎在用户帐户下显示其运行,但在后台却在系统帐户下运行。

谁能告诉我如何使用本地用户帐户执行脚本?

我用来运行PowerShell脚本的cmd是

Powershell.exe -NoProfile -ExecutionPolicy Unrestricted -Command ../powershellscript.ps1

0 个答案:

没有答案
相关问题