【问题标题】:Programmatically raise user privileges以编程方式提高用户权限
【发布时间】:2008-10-30 08:43:55
【问题描述】:

我已经维护了一段时间,但我并不是真正的专家。现在我被要求提出一个解决方案:

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

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

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

【问题讨论】:

    标签: deployment vbscript windows-xp installshield


    【解决方案1】:

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

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

    【讨论】:

      【解决方案2】:

      如果您正在寻找执行此类操作的工具包,那么,Microsoft 的 MSI 技术已内置:安装初始 MSI 文件需要管理员访问权限,其他补丁(我认为是 MSP)由原始 MSI,因此被认为是安全的 - 用户无需管理员提升即可安装它们。

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

      【讨论】:

        猜你喜欢
        • 2011-05-20
        • 1970-01-01
        • 1970-01-01
        • 2012-02-13
        • 2016-10-29
        • 2010-10-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多