0

我想知道是否有办法启动作为内置服务帐户之一运行的进程?我想启动托管代码的流程。我想使用内置服务帐户之一(LocalService、NetworkService、LocalSystem)。

4

2 回答 2

0

我认为您只能在另一个服务的上下文中执行此操作(或者仅作为 LocalSystem 运行就足够了);在这种情况下,您可以使用 LogonUser() 来获取令牌。或者,您可以尝试查找在所需帐户下运行的现有服务并复制其令牌(假设您具有适当的访问权限)。

于 2011-03-31T17:03:16.010 回答
0

我认为您可以使用psexec作为中介在 LocalSystem(又名 System)帐户下启动进程:

在系统帐户中以交互方式运行 Regedit 以查看 SAM 和 SECURITY 密钥的内容:

psexec -i -d -s c:\windows\regedit.exe

但是我想不出在其他帐户下启动的方法。关于我能想到的唯一间接方法是让服务已经在适当的帐户下运行,然后连接到它(例如通过远程处理、管道、WCF 等任何适合你的方式)并要求它启动新工艺。

当然,在那种情况下,新进程无法与桌面交互,所以如果你需要它,你仍然不走运。

于 2011-03-30T07:19:06.850 回答