我们将软件的一个组件作为 MSI 发送给已激活 AppLocker 的客户。安装失败,AppLocker 启动。据我了解,问题是:
- AppLocker 默认规则仅允许管理员安装 MSI 文件
- 按照设计,Windows 安装程序首先运行无特权的 MSI 文件,然后才切换到提升的特权
所以安装程序对于 AppLocker 来说“迟到了”。什么有效(仅尝试了1-3):
- 以管理员身份打开命令提示符并运行 MSI 文件
- 创建 AppLocker 规则,允许普通用户从指定目录安装 MSI
- 让 setup.exe 运行 MSI 并以管理员身份运行 setup.exe
- 破解 Windows 为 MSI 文件创建“运行方式”上下文菜单条目
- 将 MSI 包装成一个自解压的 EXE
所有这些要么需要在客户方面进行更改 (2, 4),要么不像安装应该那样容易 (1, 3),要么是软件包的两倍 (5)。(其他客户需要 MSI 进行部署。)
有没有一种简单的方法可以让 MSI 与 AppLocker 一起工作?