如何让我的服务只能由管理员停止?

时间:2015-03-30 14:52:45

标签: c++ cmd windows-services

我有一个作为Windows服务运行的c ++应用程序。我想确保此服务只能由管理员关闭。怎么做的? (一个cmd命令是我正在寻找的,虽然任何其他帮助也会很好) 非常感谢提前:)

1 个答案:

答案 0 :(得分:0)

不知道这是不是你要找的东西,但也许有帮助:

<强> Preventing users from stopping a particular service with a GPO.

有一些小助手允许GPO脚本编写,例如:

<强> Five Command Line Tools for Managing Group Policy

这可能不仅仅是一个简短的单一命令,但它应该做你想要的:限制用户访问服务配置。


可能还有另一种方法,它会更容易:您可以使用管理员帐户的详细信息创建或更新服务。在服务创建/配置方面有各种命令行工具,但微软文件sc.exepassword选项的使用可能就是您所需要的:

  

密码=(字符串)

     

密码字符串。如果使用LocalSystem以外的帐户,则需要这样做。

<强>可是...

我不会这样做。首先,我不确定使用管理员帐户的服务是否真的受限于其他访问。但它肯定会更改您的服务所具有的权限。我不知道你的服务是做什么的,以及它运行的权限是否很重要,但这可能是个问题。

如果您更改了服务配置,则可以立即更改该服务的各种内容。

如果您使用GPO政策,则只需更改对服务的访问权限。


这就是理论。在实践中......

...我必须承认我自己无法按照需要创建和运行服务。我试图在一个服务结构中打包一些python线,最后通过比以前更多的问题挖掘出来。即使使用用户名和密码创建服务也有点棘手,我尝试了各种命令行工具(抱歉,我不记得任何名字,但我删除了这个绝望尝试的所有数据)

由于服务创建似乎不是您的问题,请参阅此GPO脚本编写方式。