【问题标题】:Access device connection string in IoT Edge module via Device Provisioning Services通过设备预配服务访问 IoT Edge 模块中的设备连接字符串
【发布时间】:2021-07-10 00:52:39
【问题描述】:

我们正在将 Azure IoT Edge 设备从手动预配转移到使用对称密钥的 DPS。部署到我们设备的模块之一需要管理设备孪生——我们一直将其用于在模块更新中持续存在的状态属性。为了连接到设备孪生,我一直在从连接字符串创建一个 DeviceClient,该连接字符串在每个设备的基础上作为环境变量加载。这是使用 C SDK。

现在我想在配置期间请求设备凭据,以便对称密钥是设备上预安装的唯一密钥。

许多帖子表明,最佳实践无法做到这一点,最简洁的是: Access IoT Edge Device Twin from Edge Module when using X.509 Authentication

现在还是这样吗?如果是这样,如果用户模块不应该在生产环境中访问它,IoT Edge 上的设备孪生的预期用途是什么?

【问题讨论】:

  • 您考虑过使用模块孪生吗? docs.microsoft.com/en-us/azure/iot-edge/…
  • 是的,最终不得不重新设计我们的整个系统以仅使用模块孪生,边缘设备上的文件系统用于配置,需要在模块更新之后持续存在。要设置这些持久项,我们必须使用直接方法而不是模块孪生的所需属性。它们仅作为报告属性显示在双胞胎中。

标签: azure-iot-edge azure-iot-sdk


【解决方案1】:

许多帖子表明,最佳实践无法实现这一点,最简洁的是:使用 X.509 身份验证时从边缘模块访问 IoT Edge 设备孪生。还是这样吗?

情况仍然如此。不支持或不推荐访问设备孪生信息的模块。还有其他方法可以实现所需 - 就像您在评论中描述的那样。

如果用户模块不应该在生产环境中访问它,IoT Edge 上的设备孪生的预期用途是什么?

IoT Edge 中设备孪生的用例是 ADM 部署。

您创建一个部署清单,然后根据设备孪生中的标签定义它适用于哪些设备。

参考:Understand IoT Edge automatic deployments for single devices or at scale

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多