【问题标题】:How to authenticate a device (R-Pi say to be connected to Azure IoT Hub) using X.509 certificate如何使用 X.509 证书对设备(R-Pi 说要连接到 Azure IoT Hub)进行身份验证
【发布时间】:2019-09-25 16:52:30
【问题描述】:

所以,我首先将 DHT11(温度传感器)连接到我的 RPi(Raspberry Pi),然后在我的天蓝色门户中创建了一个 IOT 集线器并在集线器中注册了一个虚拟设备身份,同时创建了这个(第一次)我选择了 Azure IoT Hub 教程文档中提到的对称密钥选项,然后我编写了一个要在我的 RPI 上执行的 python 脚本,它捕获临时读数并将其发送到我的 iot 集线器。

现在要了解 iot hub 的安全方面,我正在尝试完全复制上述功能(将临时读取发送到 iot hub),但这次使用 X.509 身份验证方法。

截至目前,我已点击此链接并生成证书并将其上传到 azure iot hub 并进行了验证 OPENSSL - How to generate a proof of possesion for a X509 certificate?

现在,当我尝试将传感器数据 (DHT11) 发送到在我的 iot 集线器中注册的 iot 设备时,它显示设备未授权

我不明白如何使用证书授权/验证设备。

我觉得我应该将证书复制到我的树莓派上,并以某种方式更改我用来将临时数据发送到物联网集线器的代码,以使物联网集线器知道该设备已经获得证书(有效的)

我不知道该怎么做...谁能帮帮我....我想用 python 来做这个

【问题讨论】:

    标签: azure authentication openssl x509 azure-iot-hub


    【解决方案1】:

    这里有一个 Python X.509 身份验证示例https://github.com/Azure/azure-iot-sdk-python-preview/blob/master/azure-iot-device/samples/advanced-hub-scenarios/send_message_x509.py

    这是使用仍处于预览阶段的替代 Python SDK,但它应该仍然可以工作。

    您需要创建一个证书和私钥,并使用您在 IoT 中心验证过的证书对其进行签名。这个过程在这里解释:https://github.com/Azure/azure-iot-sdk-c/blob/master/tools/CACertificates/CACertificateOverview.md

    【讨论】:

      猜你喜欢
      • 2017-12-26
      • 2021-12-27
      • 2019-01-20
      • 2011-09-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-28
      相关资源
      最近更新 更多