允许非管理员在 Windows 7 上以管理员身份运行程序

允许非管理员在 Windows 7 上以管理员身份运行程序

在 *nix 上,管理员可以使用 setuid 标志允许非管理员运行某些程序,否则这些程序需要管理员权限。在 Windows 7 中有没有办法做类似的事情?

这个问题已经在这里被问到针对 Windows XP,答案通常不令人满意。我想知道 Windows 7 是否提供了更好的方法。

我能想到的一个想法是使用 Microsoft 的 UNIX 应用程序子系统,但如果可以避免的话,我宁愿不在每个用户的系统上安装它。

我能想到的另一个想法(也适用于 XP,但我没有看到任何地方提到过)是创建一个作为服务,它采用“安全”应用程序的白名单,并且可以被要求(从命令行、批处理文件或脚本)以 LocalSystem 或服务使用的任何帐户身份运行列表中的任何程序。这可能吗?

有没有不那么笨重的解决方案?或者,有人成功实施了上述任何一种技术吗?

答案1

调查可能会有成效为什么程序需要管理员权限。如果涉及到文件或注册表权限之类的问题,那么您可以通过调整权限来授予用户访问权限,从而使程序在非管理员凭据下运行。

答案2

问题不应该是“我如何授予管理员权限”,而应该是如何让用户获得运行应用程序的正确权限。在 Windows 中,“管理员权限”是指管理员默认获得的权限集合。很少有应用程序需要所有这些权限。您应该审核应用程序的权限使用情况并相应地调整用户权限(最好通过创建一个组并将权限分配给该组)。这个概念被称为最小特权原则

答案3

http://www.technize.com/how-to-always-run-programs-as-administrator-in-windows-7/

  1. 右键单击要授予管理权限的程序
  2. 转到属性 –> 兼容性选项卡
  3. 在兼容性选项卡的末尾,您将看到以下复选框:以管理员身份运行此程序
  4. 只需选中复选框并单击“确定”,然后再次单击“确定”。
  5. 这将永久授予该程序管理权限。

如果您想授予所有用户程序管理权限,那么您可以再次转到兼容性选项卡并单击更改所有用户的设置。

选中以管理员身份运行此程序复选框。

现在,该程序将以系统所有用户的管理模式运行。

答案4

查看 RunAsGui。它允许您存储要允许用户使用的给定程序的管理员的加密凭据。它是免费的。

相关内容