以特权用户身份运行Windows服务

时间:2013-03-06 15:01:39

标签: c++ windows service

我有一个用c ++编写的Windows服务,我需要它从特权权限开始,例如。管理员或系统。该服务需要访问%SYSTEMROOT%,%USERPROFILES%,%TEMP%等。 该服务将在Windows XP和7下运行。

将使用GPO部署服务,因此无法使用本地帐户。

我可以在服务中设置用户吗?如果,怎么样?如果没有,我如何使用GPO部署它?

有什么想法吗? 感谢

1 个答案:

答案 0 :(得分:1)

您不从服务(即代码)设置用户。而是在部署/安装服务时设置运行服务的用户帐户。

您安装Windows服务的选项是

  • 构建MSI包并利用Windows Installer基础结构
  • 使用命令行手动部署(即我们的批处理文件和sc命令)

使用sc command时,您可以使用以下命令设置服务的用户帐户:

sc config <servicename> obj= <accountname> password= <password>

通过Windows Installer进行部署时,您可以在MSI中配置用户帐户。

然后,您可以使用组策略使用MSI或其他方法远程安装/部署您的服务。