我正在关注本教程(https://docs.microsoft.com/en-us/azure/iot-dps/tutorial-group-enrollments),其目标是在 Azure 预配服务中创建组注册并连接模拟设备给它。创建组注册和证书后,我遇到了与签名证书不匹配相关的错误。这发生在本教程“模拟设备”部分的第 7 步。
与错误相关的图像:
谢谢您的帮助!
我正在关注本教程(https://docs.microsoft.com/en-us/azure/iot-dps/tutorial-group-enrollments),其目标是在 Azure 预配服务中创建组注册并连接模拟设备给它。创建组注册和证书后,我遇到了与签名证书不匹配相关的错误。这发生在本教程“模拟设备”部分的第 7 步。
与错误相关的图像:
谢谢您的帮助!
使用 Windows Powershell 创建证书时会出现问题。简单的方法是使用 Git bash 并在 Windows 平台上使用 bash 命令生成证书。
你可以在这里做两件事:
在 DPS 注册列表中选择 CA 证书,并使用在 DPS 的“证书”选项卡中上传的根 CA 证书,而不是上传由根 CA 签名的中间 1 证书。在模拟应用程序中添加设备证书密钥并运行它。它在我的情况下有效。尽管如果存在多租户情况并且您想使用中间证书,这不是正确的方法。
powershell 命令文件生成类似这样的证书链 RootCA->intermediate 1->intermediate 2->intermediate 3
所以中间证书 3 由中间 2 签名,中间 2 由中间 1 签名,然后由 Root 签名
此外,所有设备证书均由根 CA(根 CA-> 叶证书)签名,因此您收到错误“中间证书与签名证书不匹配”。您可以编辑该文件,转到参数中的函数 New-CACertsDevice(),将 $signingCertSubject 作为中间证书 1 的名称,这将是“Azure IoT CA TestOnly Intermediate 1 CA”