所以我需要改变一些属性是安全的,让他们在维护 / 更改模式下正确访问
<Property Id="CA_FILE" Secure="yes" />
但是这样做的安全含义是什么?来自wix doentation
表示使用提升的权限执行托管安装时,可以将属性传递到服务器端。有关详细信息,请参阅 SecureCustomProperties 属性。
Frommsdn docSecureCustomProperties 是由分号分隔的公共属性的列表。这些属性包含在受限公共属性的默认列表中,当使用提升的权限进行托管安装时,安装程序可以将这些属性传递给服务器端。
但是它具体意味着什么安全性?我是否需要特别注意那些比较与非安全属性中传递的内容?特别是如果它是用户输入?
我不知道下面的答案你的问题,但让我只是添加它:
Elevated Rights:在安全的桌面环境中(用户在没有管理员权限的情况下作为标准用户操作),您使用“提升权限”进行安装,而不是“管理员权限”。这意味着普通用户使用临时提升权限进行安装,这与正常的“管理员权限”略有不同。对于这些安装方案,您需要确保使用安全属性或安装失败的其他示例。
& amp;Server Processes:MSI 安装具有客户端进程(作为用户上下文运行)和服务器进程(作为本地服务运行,具有修改系统所需的所有访问权限)。后一个进程完成安装工作,客户端进程将显示 GUI 并启动真正的安装。此时,客户端进程将移交给服务器进程,因为它们没有设置为“安全”。
SecureCustomProperties:特殊属性 SecureCustomProperties 包含服务器进程中可用的属性的分隔列表。只能指定 UPPERCASE(公共属性)。
受限的公共属性:Now we arrive at this part of the MSI doentation:“在托管安装的情况下,软件包作者可能需要限制哪些公共属性传递到服务器端,并且可以由非系统管理员的用户更改。当安装要求安装程序使用提升的权限时,通常需要一些限制来维护安全的环境。
Windows:Windows 操作系统工作方式的更改有时会干扰 MSI 操作。因此,设置这些属性的安全性可能不足以使安装正确运行。
自定义操作:使用真正的“提升权限”也很困难,因为在 MSI 中实现自定义操作非常复杂。通常,供应商软件包中存在错误,当使用“提升权限”而不是“管理员权限”运行时,可能会触发问题。人们通常使用“真正的管理员权限”打开会话(例如,通过专用的分发系统,例如 SCCM-Microsoft Endpoint Configuration Manager
MSI 的好处:应该提醒人们,MSI 已基于a number of critical benefits over previous deployment technologies成功(尽管有其缺陷)。
Links: MSI For System s More on msiexec.exe processes The use of SecureCustomProperties本站系公益性非盈利分享网址,本文来自用户投稿,不代表边看边学立场,如若转载,请注明出处
评论列表(35条)