2

我一直在维护一个安装,但我不是真正的专家。现在我被要求为此提出一个解决方案:

我们的软件始终与计算机一起出售,因为它必须在非常受控的环境中运行。安装程序需要管理权限才能执行。到目前为止,我们有两个不同的用户,一个具有管理权限,另一个没有。我们的客户服务以管理员身份登录,安装软件并重新启动机器,以便用户可以作为普通用户访问。

现在我们希望用户能够自己安装软件,但我们不希望他们以管理员身份访问,因为他们可以修改不应修改的内容。

那么,有没有办法在安装过程中以编程方式提高用户权限,然后再降低它们呢?安装程序是使用 InstallShield 制作的,但我们使用 vbscript 来检查一些先决条件。

4

2 回答 2

4

查看CPAU。它允许您创建一个以管理员身份运行安装的加密命令。

编辑是一个更全面的类似工具列表。

于 2008-10-30T09:46:09.580 回答
1

如果你正在寻找一个工具包来做这种事情,那么微软的 MSI 技术已经内置了:安装初始 MSI 文件需要管理员访问权限,附加补丁(我认为是 MSP)由原始 MSI 进行数字签名,并且因此被认为是安全的 - 用户无需管理员提升即可安装它们。

您可以做同样的事情:作为管理安装的一部分,安装一个服务。该服务可以创建一个命名管道——您明确地将用户 ACL 授予该管道——甚至只是一个套接字或监视一个允许用户级代码与服务代码通信的放置文件夹(以 SYSTEM 或配置访问权限运行)。然后,该服务可以使用其 SERVICE 或配置的帐户级别权限来模拟管理员,或代表用户执行其他任务,而无需授予用户任何类型的提升权限 - 即使是暂时的。

于 2008-10-30T10:20:28.120 回答