如何允许非管理员使用 shutdown.exe?

Naf*_*Kay 7 windows windows-xp windows-task-scheduler

根据问题的已接受答案中的评论,我在运行调用 的计划任务时遇到问题shutdown.exe,即使用户是管理员。我正在使用他们的主帐户管理其他人的机器,所以我不能完全改变太多,因为他们喜欢他们本来的样子。

真正奇怪的是,我只能在以下情况下运行任务:

  1. 用户是管理员。
  2. 他们已经定义了密码。

由于一些我不知道的奇怪原因,用户不仅必须是管理员,而且他们还必须拥有帐户密码才能运行计划任务。否则,我会收到拒绝访问错误并且任务无法运行。

如何在不必强制用户为其帐户定义密码的情况下进行这项工作?

本质上,剩下的目标是让计算机在每晚晚上 11 点关闭(无论谁登录或未登录)。

当我尝试在Scheduled Tasks程序中设置任务时,我遇到了以下错误:

在此处输入图片说明

尝试设置任务帐户信息时发生错误。
具体错误为:
0x8007005:访问被拒绝。
您无权执行请求的操作。

为了记录,这是我的安全策略,您可以看到我的用户具有强制关闭和手动关闭计算机的权限:

在此处输入图片说明

use*_*686 5

最简单的解决方案是将所述计划任务配置为在管理员帐户下运行。你不是需要使用相同的帐户通常登录的用户-简单地创建任务时提供不同的凭据。

如果您不希望“管理员”拥有密码,您可以只为计划任务创建一个专用帐户。(如果您应用下面的修复程序,有限的用户帐户也可以使用。)


shutdown.exe程序需要SeRemoteShutdownPrivilege来运行,而不是通常的SeShutdownPrivilege——我猜它使用相同的 RPC 来关闭本地和远程机器。(这也解释了需要密码的原因——默认情况下,只有控制台登录是免除的,这显然不包括 RPC。)

您可以授予SeRemoteShutdownPrivilege通过secpol.msc地方政策用户权限分配,通过编辑“从远程系统强制关闭”条目。

  • 您可以为该任务创建一个专用帐户并将其添加到此处(最佳选择)。
  • 对于任何用户的交互式命令行使用,您可以添加INTERACTIVE.
  • 对于任何用户的计划任务,添加BATCH.