【问题标题】:Unable to execute batch files with non-administrative user on windows无法在 Windows 上使用非管理员用户执行批处理文件
【发布时间】:2016-08-08 20:01:01
【问题描述】:

我有一些由管理员创建的批处理文件,我需要非管理员用户来运行它们。我已授予非管理用户读取和执行文件和整个文件夹树的权限。 我仍然无法运行批处理文件,出现“拒绝访问”错误。

我还需要设置更多权限吗? (这些批处理文件启动/停止 Windows 服务)。

【问题讨论】:

  • 您是否在尝试执行 .bat 文件时遇到“访问被拒绝”,或者当您在当前用户上下文中尝试操作 Windows 服务时?我的预感是后者。
  • 当我以其他用户身份登录并尝试运行批处理文件时,我收到拒绝访问。该脚本基本上是启动/停止 zookeeper 服务。
  • 如果您不是管理员,则无法启动或停止服务,即使您可以运行可执行文件。
  • @Jean-FrançoisFabre - 我明白了。有没有其他方法可以做到这一点?

标签: windows batch-file cmd permissions


【解决方案1】:

您可以使用runas,如下所述:https://superuser.com/questions/973349/is-there-a-windows-equivalent-of-the-setuid

但它会要求用户知道管理员密码。

另一个“hack”:您可以创建一个正在运行的服务,该服务将每 10 分钟查看一次给定文件夹(例如C:\trigger),如果它在这里找到某个文件,则启动/停止该服务并删除该文件.

用户可以简单地使用一个脚本来创建该文件,该文件会在一段时间后启动服务。

由于服务只是启动/停止给定服务,因此不存在安全问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-07-28
    • 2013-05-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-19
    • 2012-05-23
    相关资源
    最近更新 更多