【发布时间】:2012-01-30 01:08:07
【问题描述】:
我们即将推出数百台运行 Windows 7 的新机器,操作系统通过 WDS 安装,因此目前我们可以进行更改并将它们 sysprep 到构建中。
问题在于我们多年前编写的一个 .Net 应用程序,它本身产生了一个修改过的命令 shell。该 shell 运行一个 dataflex 应用程序,该应用程序本身需要以提升的权限运行。
我们不授予用户任何一般管理员权限。
是否有一种机制可以预先允许我们的 .Net 应用程序以管理员身份运行,以便命令控制以管理员身份运行?
我知道我可以在 app.manifest 中进行更改,以要求程序以管理员身份运行。我不知道如何(作为管理员)配置机器以允许这种情况发生,而无需给予用户比我希望他们拥有的更多的权利或凭据。
【问题讨论】:
-
您不能将应用程序修改为始终以管理员身份运行。如果你能做到这一点,那么任何程序都可以赋予自己管理员权限,这意味着整个安全基础设施都被破坏了。作为管理员,您也许能够配置系统,以便允许特定程序行使某些提升的权限。
-
您希望最终用户以管理员身份运行某些东西而不是管理员?我同意其他一些观点,因为你需要改变你正在尝试做的事情。您需要解决问题而不是解决方法。如果您的用户确实需要管理员权限来完成他们的工作,那么请给他们。如果他们不这样做,那么您需要解决需要管理员权限的应用程序的问题。就像其他人说的,可能只是修改资源权限。
-
吉姆,我知道允许自己以管理员身份运行的程序将是一个荒谬的安全漏洞,但授予权限以允许特定软件以管理员身份运行的管理员并非如此愚蠢的。我在想像 caspol 这样的东西。我可以通过设置没有时间表并提供运行方式凭据的计划任务来实现它,并为用户提供启动任务的快捷方式。但我认为这些信誉无法在 sysprep 中存活。
-
刚刚意识到查尔斯编辑了这个问题并重新命名它相当糟糕。我对“修改程序”不感兴趣。显然那是不可能的。我对我可以对系统做些什么来允许它感兴趣。正如建议的那样,我需要在 ServerFault 上提出这个问题。
标签: c# .net elevated-privileges