我正在尝试让 NSIS 安装程序在安装过程中安装自定义服务。最好使用 Win 7 及更高版本中提供的典型“NT Service\xyz”样式虚拟服务帐户之一来运行该服务。正如您可能从 Win7 中猜到的那样,这是在客户端计算机上而不是服务器上的部署。
它在我的测试机器上运行良好,但我对于该服务用户的权限正确方法有一些疑问,特别是当域 GPO 可能生效时。
在简单的情况下,服务通过 NT SERVICE\ALL SERVICES 成员资格获取其“作为服务登录”权限,但我看到过并非如此的情况,并且该组的权限已通过 GPO 明确撤销。
所以问题是:客户端计算机的安装程序是否应该明确创建/配置 ACL 以向新创建的虚拟服务用户授予“作为服务登录”权限,还是应该希望/依赖默认的“NT Service\All Services”组来授予此权限?
答案1
这已经是老生常谈了,但既然我在这里。在这种情况下,您的应用程序是否修改本地安全设置实际上并不重要。如果 GPO 控制对可以作为服务运行的内容的访问 - 它将覆盖您的更改。这不是一件坏事 - 它只是意味着您需要记录您的要求,然后获得 GPO 的排除,或者创建包含您的要求的其他 GPO。