如何在不提示 UAC 的情况下允许程序更新?

如何在不提示 UAC 的情况下允许程序更新?

我们有大约 15-20 名用户这个软件已安装。

我们通过 GPO 启用了 UAC,这意味着如果标准用户尝试安装该软件,该软件会提示管理员批准。没问题,他们可以致电帮助台安装该软件。

我的问题是,我们的帮助台每天都受到大量请求,因为用户无法更新软件,而且几乎每天都有更新,从而引发 UAC。

使用 procmon.exe 找出它试图写入的位置,然后我创建了一个 GPO,以允许文件权限访问此特定软件的程序文件文件夹,包括程序数据文件夹,但它仍然提示管理员批准。似乎该软件正在使用 msiexec.exe 运行 .msp 补丁文件。

我在 procmon 中仍然可以看到的唯一“访问被拒绝”是这样的:

procmon 日志

除了禁用 UAC 之外,我还能做些什么来阻止该软件使用管理员密码凭据提示 UAC?

答案1

不幸的是,这种不便问题并不容易解决,因为你谈论的其实是行为不当的软件——它不适合工作站被锁定的企业环境。你需要选择可以在不积极应用补丁的情况下运行的软件,然后你可以管理时间表并在签署补丁后自行推送补丁。这就是系统管理员避免使用经常尝试更新的消费级软件的原因。

答案2

我不确定你为什么这么说UAC enabled through GPO as you should。我不同意这种说法。用户不应该拥有管理员权限,UAC 问题已解决。

至于回避问题,为什么你要让用户安装更新,而不是通过启动脚本或软件安装策略通过 GPO 推送更新?听起来这比尝试使用 调试这个问题要容易得多procmon,而且除了“做对了”并确保环境一致之外,还可以为 helldesk 省去一些麻烦。

答案3

您需要对 MSI 软件包和 MSP 软件包进行签名。MSI SDK 中详细介绍了一系列步骤:用户帐户控制 (UAC) 修补

答案4

我已经遇到过这种问题,我的解决方法是在不同的用户帐户下运行特定程序。如果您的软件可以使用 LSA 帐户,您可能会更幸运。

相关内容