Azure IoT Edge - 禁止模块到另一个设备的模块调用

Azure IoT Edge - Inhibit Module to Module call to another device

使用 Azure IoT Edge SDK 可以从任何设备上的任何模块 运行 在任何其他设备上调用方法调用。 see here

这似乎是一个很大的安全风险:

  1. 任何恶意客户都可以简单地劫持他面前的边缘设备,并调用连接到 IoT 中心的任何其他客户设备上的模块方法
  2. 任何恶意边缘模块开发人员都可以发布具有相同功能的边缘模块。

理想情况下,我们希望限制哪个模块可以在同一设备上调用另一个模块的方法,但我们 100% 不希望一个设备调用其他设备上的方法。

Azure IoT edge 可以做到这一点吗?

限制 modules/devices 注册到 Azure IoT Edge 之间的通信不可用。

关于安全风险:

  • 设备和模块需要是“部分 的”相同的 IoT Edge(边缘集线器)。请参阅 doc”以交互方式 调用从边缘模块到边缘设备的方法。 两者都 边缘模块和边缘设备需要连接到同一个边缘 hub." 部署只能从云端完成(Azure IoT 集线器或 IoT Central)。
  • 部署者完全控制什么 部署。假设您不部署模块或边缘连接 未知或未经测试(安全)的设备,它不会 可以随机劫持一个 device/module。因为 部署限制设备和模块被认为是 同一安全区的一部分。 More on this.
  • More Azure IoT 安全最佳实践。

出于其他原因,限制 modules/devices 注册到 Azure IoT Edge 之间的通信可能是一个不错的选择。请提供您的反馈 here.

希望这有助于回答您的 question/concern。