我刚才发布了一个关于允许特定用户启动/停止Windows服务的问题。
为用户提供服务启动/停止权限
我决定重新审视这个问题。 我不知道这次我做了什么不同,但GPO最终允许我的Backup用户启动/停止相应的服务。 直到我尝试以该用户的身份运行计划的任务。
我有一个batch file,停止服务,备份/validation服务的数据,并重新启动服务。 如果我打开CMD作为备份用户并运行batch file,它工作正常。 如果我创build一个计划任务,请将其设置为以备份用户身份运行,而不pipe用户是否login,并且该任务运行的是同一个batch file,则不能再停止/启动服务(错误5,访问被拒绝)。
我认为这是因为用户没有login,因此GPO不适用于其帐户。 如果是这种情况,我该如何得到这个工作? 我宁愿避免以pipe理员身份运行任务。
在任务调度程序下运行时,用户对服务的访问要less得多。 这是因为访问处理服务的Service Control Manager与authentication用户不同,而不是交互用户 。
交互式用户(login的)可以枚举,启动和停止服务,而非交互式用户甚至不能枚举它们。
前一段时间我写了一篇关于这个话题的博客文章 。 它试图解释发生了什么,还提供了一个脚本来更改权限。