运行计划任务时的 Windows 用户权限

运行计划任务时的 Windows 用户权限

不久前,我发布了一个关于允许特定用户启动/停止 Windows 服务的问题。

为用户提供服务启动/停止权限

我决定重新审视这个问题。我不知道这次我做了什么不同的事情,但 GPO 最终允许我的备份用户启动/停止相应的服务。直到我尝试以该用户的身份运行计划任务。

我有一个批处理文件,它可以停止服务、备份/验证服务的数据并重新启动服务。如果我以备份用户身份打开 CMD 并运行批处理文件,它可以正常工作。如果我创建一个计划任务,将其设置为以备份用户身份运行,无论用户是否登录,并让任务运行相同的批处理文件,它将不再能够停止/启动服务(错误 5,访问被拒绝)。

我认为这是因为用户未登录,因此 GPO 未应用于其帐户。如果是这种情况,我该如何让它工作?我宁愿避免以管理员身份运行该任务。

答案1

在任务调度程序下运行时,用户对服务的访问要少得多。这是因为Service Control Manager对处理服务的访问与已认证用户互动用户

互动用户(已登录的用户)可以枚举,启动和停止服务,而非交互式的甚至不能枚举它们。

我写了一个博客文章不久前我讨论了这个主题。它试图解释发生了什么,并提供了一个更改权限的脚本。

相关内容