我有一个来自Linux服务器的根证书pem文件。需要连接到该服务器的应用程序告诉我,它需要一个publicCert pem文件和一个privateKey pem文件才能与服务器通信。
我是否从根证书生成这些证书?我的想法是,我将提供openssl到根证书的路径,然后将其转储出我想要的publicCert / privateKey。
我已经按照here所述在服务器上创建了证书。现在,我需要按照here的说明安装在下游设备上。
我需要使用的客户端连接输入需要以下参数:
connString: 'HostName=foo'
protocol: MQTT
publicKeyCertificateString: certificateString or path to certificate
privateKeyString: keyString or path to key
new DeviceClient(connString, protocol, publicKeyCertificateString, privateKeyString);
答案 0 :(得分:0)
您只需要根CA证书在下游设备的信任库中可用。您似乎想做的是相互认证。 Azure IoT Edge当前不支持下游设备使用客户端证书(相互身份验证)进行连接。 (边缘设备仅支持对称密钥身份验证,但不支持x509证书身份验证)。为了使用MQTT发布消息,您需要为下游设备生成SAS令牌,然后使用它与iot集线器通信(边缘设备将充当透明网关)。