视频讲解:
为什么需要DPS(Device Provisioning Service)及DPS的工作原理
您可以在B站观看视频或在本站观看:https://www.bilibili.com/video/av92435390?p=1
实战:创建IoT Hub, DPS并将IoT Hub链接到DPS中
您可以在B站观看视频或在本站观看:https://www.bilibili.com/video/av92435390?p=2
图文介绍:
DPS是什么?
官方定义是:
IoT 中心设备预配服务是针对 IoT 中心的帮助程序服务,无需人为干预即可零接触实时预配至合适的 IoT 中心,方便客户采用安全且可缩放的方式预配数百万台设备。
划重点,1. 是IoT Hub的一个配套服务;2. 不用认为在IoT Hub 中进行配置就能注册IoT 设备;3. 安全,可缩放,数百万台。
什么场景下需要DPS呢?
- 零接触预配到单一 IoT 解决方案,无需在出厂(初始设置)时对 IoT 中心连接信息进行硬编码
- 跨多个中心对设备进行负载均衡
- 根据销售交易数据将设备连接到其所有者的 IoT 解决方案(多租户)
- 根据用例将设备连接到特定的 IoT 解决方案(解决方案隔离)
- 将设备连接到具有最低延迟的 IoT 中心(异地分片)
- 根据设备中的更改重新进行预配
- 滚动设备使用的密钥以连接到 IoT 中心(当不使用 X.509 证书进行连接时)
原理示意图
- 设备制造商将设备注册信息添加到 Azure 门户中的注册列表。
- 设备联络出厂时设置的预配服务终结点。 设备将识别性信息传递给预配服务来证明其标识。
- 预配服务通过使用 nonce 质询(受信任的平台模块)或标准 X.509 验证 (X.509) 根据注册列表项来验证注册 ID 和密钥,从而验证设备的标识。
- 预配服务将设备注册到 IoT 中心,并填充设备的所需孪生状态。
- IoT 中心将设备 ID 信息返回给预配服务。
- 预配服务将 IoT 中心连接信息返回到设备。 设备现在可以开始将数据直接发送到 IoT 中心。
- 设备连接到 IoT 中心。
- 设备从其在 IoT 中心中的设备孪生获取所需的状态。
实战:创建Azure IoT Hub 和 IoT DPS服务,并将IoT Hub链接到DPS服务中
准备工作1,注册IoT Hub
在资源组中新建“IoT 中心”
本例中,选择了离作者位置比较近的中国东部2区域,输入IoT Hub的名称,点击创建。
默认创建了一个S1的IoT Hub。
准备工作2, 注册DPS服务
在资源组中创建“IoT 中心设备预配服务”
位置同样选择了中国东部2,输入DPS名称,点击创建。
准备工作3,将IoT Hub链接到 DPS服务
进入到DPS服务,点击“链接的IoT中心”,点击添加。
选中当前订阅下要添加的IoT中心,访问策略选择“iothubowner”,点击保存;
注意,此处可以添加多个IoT Hub,即 一个DPS可以向多个IoT Hub预配设备。
本系列其他文章:
- (视频)Azure IoT 中级(1)-Device Provisioning Service(DPS)概览
- (视频)Azure IoT 中级(2)-理解DPS组注册和单独注册
- (视频)Azure IoT 中级(3)-(案例1)使用DPS通过对称密钥进行单个设备注册
- (视频)Azure IoT 中级(4)-(案例2)使用DPS通过对称密钥进行设备组注册
- (视频)Azure IoT 中级(5)- 在 DPS/IoT Hub中使用X509证书的准备工作(1)了解证书链
- (视频)Azure IoT 中级(6)- 在 DPS/IoT Hub中使用X509证书的准备工作(2)创建自签名证书并验证所有权
- (视频)Azure IoT 中级(7)- (案例3)设备通过X509证书经DPS验证后注册到IoT Hub并开始通信