首页 > 解决方案 > 需要签署用户模式驱动程序但找不到匹配的交叉证书 - Windows 和 TFS 构建

问题描述

我收到了用户模式 ​​USB 即插即用驱动程序的源代码和来自 Go Daddy 的证书,并被指示为源代码设置 TFS 构建并使驱动程序“签名”。从来没有这样做过,而且这里没有其他人这样做过,我一直在搜索互联网,特别是 Microsoft 页面,到目前为止,我发现的所有说明都与内核模式驱动程序有关。此页面至少提到“用户模式” - 一次。 为公开发布签署驱动程序 但是在提到必须签署内核模式和用户模式驱动程序之后,页面的其余部分将重点介绍如何签署内核模式驱动程序。所以我心想:“也许用户模式和内核模式的指令是一样的。” 因此,我尝试按照说明进行操作。

首先,我没有获得带有证书的私钥文件,但偶然发现我可以使用 certmgr 而不是使用 Pvk2Pfx 生成个人信息交换 (pfx) 证书。所以我现在有一个 pfx 证书,但是说明说我需要获得一个交叉证书。我按照说明进行操作,但找不到具有相同指纹的 Go Daddy 交叉证书。

当我在 certmgr 中查看根颁发机构证书时:颁发者:Go Daddy 根证书颁发机构 - G2 指纹:47 be ab c9 ....

但是当我按照说明获取交叉证书时,虽然我确实找到了 Go Daddy 的交叉证书,但没有一个匹配的指纹。

除非,我完全误解了,构建服务器需要交叉证书才能构建驱动程序包并对其进行签名。我错了吗?我一定是误会了什么。我哪里错了?

TIA,达尔文

标签: tfsvisual-studio-2017x509certificatewindows-server-2016usermode

解决方案


我花了一点时间才终于认识到交叉证书已经安装在证书存储中。我只是没认出来。我假设它是在我安装驱动程序证书时安装的。部分混淆是因为 Visual Studio 2016 在尝试选择证书时无法识别项目属性中的驱动器证书或交叉证书。直到我使用 VS 安装证书,它们才出现。


推荐阅读