签名类别和驱动程序安装

在 Windows Vista 和更高版本的 Windows 将 驱动程序包 暂存到 驱动程序存储 中并在设备上安装驱动程序包之前,操作系统会分析驱动程序包的签名。 如果存在签名,Windows 将针对该签名验证驱动程序包的所有文件。 根据此分析的结果,Windows 将驱动程序包归入以下类别之一:

由 Microsoft Windows 签名机构签名。
这些驱动程序包要么是收件箱,要么由 WHQL 签名,要么由 Windows 持续工程公司签名。

由受信任的发布者签名。
这些驱动程序包由第三方签名,并且用户已显式选择始终信任此发布者的已签名驱动程序包。

由不受信任的发布者签名。
这些驱动程序包由第三方签名,并且用户已明确选择从不信任此发布者的驱动程序包。

由未知信任的发布者签名。
这些驱动程序包由第三方签名,用户尚未指示是否信任此发布者。

改变。
这些驱动程序包已签名,但 Windows 检测到 驱动程序包 中至少有一个文件在包签名后被更改。

符号。
这些驱动程序包未签名或签名无效。 必须使用受信任的证书颁发机构 (CA) 颁发的证书来创建有效的签名。

对驱动程序包进行分类后,Windows 将确定是否应将其暂存到 驱动程序存储 中并在设备上安装。 该过程取决于启动驱动程序包操作的用户类型。 对于非管理用户和标准用户,Windows 不会提示用户。 它会自动安装通过 Windows 签名机构或受信任的发布者签名的驱动程序包,并且以无提示方式拒绝安装所有其他程序包。

管理用户具有更大的灵活性:

  • 如果驱动程序包由 Windows 签名机构或受信任的发布者签名,Windows 将暂存并安装驱动程序包,而不提示用户。

  • 如果驱动程序包由不受信任的发布者签名,则 Windows 不会安装驱动程序包。 在这种情况下,Windows 不会提示用户,但会将错误记录到 Setupapi.dev.log

  • 如果驱动程序包由信任未知的发布者签名,Windows 会提示用户出现以下Windows 安全中心对话框。

    具有未知信任的驱动程序的 Windows 安全对话框的屏幕截图。

    用户必须显式选择是否安装此驱动程序包。 用户还可以将发布者添加到用户系统上的受信任发布者列表。 如果用户选择此选项,则安装到用户的系统上时,此发布者中的所有未来驱动程序包都被视为受信任。 如果用户未选择此选项,则发布者将保留在未知信任类别中,如果管理用户尝试从此发布服务器安装其他驱动程序包,则继续收到此提示。

  • 如果驱动程序包缺少有效的签名或已更改,Windows 将使用以下Windows 安全中心对话框提示管理员。 同样,用户必须显式选择是否安装驱动程序包。

    没有有效签名的驱动程序的 Windows 安全对话框的屏幕截图。

注意在 Windows Vista 和更高版本的 Windows 上,为了使用户能够播放下一代高级内容,如HD DVD和根据高级访问内容系统 (AACS) 规范许可的其他格式,其系统上的所有内核模式组件都必须签名。 这意味着,如果管理用户选择安装未签名或更改的驱动程序包,则不允许系统播放高级内容。 有关如何保护 Windows Vista 中的媒体组件的详细信息,请参阅 Windows Vista 中受保护媒体组件的代码签名