如何检查 WinGet 配置文件的可信度
在运行 WinGet 配置文件之前,建议查看和评估文件中列出的每个资源,确保你完全了解正在安装、更改或应用于操作系统的内容,并且它来自可靠且安全的源。
详细了解如何使用 WinGet configure 命令。
安全通知和审批
在运行配置之前,系统会提示用户(除非他们显式传递了配置协议接受参数)查看并承认自己有责任验证配置。
由于 WinGet 配置文件实现的无人参与安装优势,显式安装通知和审批的数量大大减少。 相反,在使用 winget configure
命令运行配置之前,使用 WinGet 配置文件需要预先对文件进行严格的安全检查。 你负责评审将安装的每个包和每个 PowerShell Desired State Configuration (DSC) 模块,这些模块将用于确保它来自可靠的源。
请注意:
在管理 shell 中通过
winget configure
运行配置的用户将不会收到在管理上下文中对系统进行更改的提示。在用户上下文中通过
winget configure
运行配置的用户可能只会收到单个用户帐户控制 (UAC) 提示,用于提升整个配置。
评审配置资源
WinGet 配置利用 PowerShell DSC 将配置应用于用户系统。 配置文件指定将用于应用所需状态的 PowerShell DSC 资源。 在同意运行配置文件之前,应评审每个 DSC 资源。
若要评审 PowerShell DSC 资源,请执行以下操作:
- PowerShell
Get-PSRepository
cmdlet 可用于查看配置的存储库,并确定在执行文件之前资源的来源位置。
查看配置资源时,请注意:
PowerShell DSC 资源可以配置为运行任意代码,包括但不限于将额外的 DSC 资源和二进制文件下拉并执行到本地计算机。 这需要对发行商的资源和信誉进行认真的诚信检查。 例如,DSC 脚本资源提供了一种在目标节点上运行 Windows PowerShell 脚本块(使用 Get、Set 和 Test 脚本)的机制。 在未查看脚本内容的情况下,不要从不受信任的发行商运行脚本资源。
PowerShell 库是一个用于发现、共享和获取 PowerShell 模块、脚本和 DSC 资源的中央存储库。 此存储库未经 Microsoft 验证,并且包含来自各种作者和发行商的资源,默认情况下不应信任这些资源。 每个包在库中都有一个特定页面,包含关联的元数据,其中
Owner
字段与库帐户紧密相关(比 Author 字段更可信)。 如果发现发布的包不可信,请选择该包页面上的“报告滥用行为”。 详细了解 PowerShell 库。
测试配置文件
建议在干净隔离的环境中测试所有 WinGet 配置文件。 一些测试选项包括: