服务需要哪个用户权限才能启动/停止其他服务?

我写了一个应该启动/停止其他服务的服务。 这是我正在使用的代码:

ServiceController sc = new ServiceController("servicename"); if(sc.Status != ServiceControllerStatus.Running) { sc.Start(); } 

这是exception的callstack。 (对不起,但邮件是用德语本地化的,但这与理解我的问题无关)

 System.InvalidOperationException: Der Dienst SCardSvr kann nicht auf dem 

电脑 。 geöffnetwerden。 —> System.ComponentModel.Win32Exception:Zugriff verweigert
— Ende derinternenAusnahmestapelüberwachung—
bei System.ServiceProcess.ServiceController.GetServiceHandle(Int32 desiredAccess)
bei System.ServiceProcess.ServiceController.Start(String [] args)
bei System.ServiceProcess.ServiceController.Start()

目前我正在’Networkservice’下运行该服务。 我想该帐户不足以满足必要的用户权限。
我将创建一个新用户,该用户具有启动/停止任意服务所需的最小权限。
这个新的useraccount需要什么权限?

它是否需要能够启动和停止任意服务或特定集合?

对于更精细的控制,您可以针对特定服务设置权限。 请参阅http://msmvps.com/blogs/erikr/archive/2007/09/26/set-permissions-on-a-specific-service-windows.aspx?CommentPosted=true#commentmessage

“高级用户”组的成员具有启动和停止服务的能力。 请参阅http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/windows_security_default_settings.mspx?mfr=true