ThingsBoard 实现设备自注册【检查预配置设备】
正文与配图来自原稿。官方文档:Device provisioning。允许创建策略亦见专栏 设备自注册。
1、概述
两种常见需求:
- 允许创建新设备:平台无预录入,设备自助注册。
- 检查预配置设备:先录入,仅允许名单内设备取令牌。


2、允许创建新设备
创建设备配置,策略选「允许创建新设备」,设置密钥名/密钥(如 test / 123456):


MQTT 连接的 ClientId / Username 须为 provision(源码 DataConstants.PROVISION):



先订阅 /provision/response,再向 /provision/request 发:
json
{
"deviceName": "自注册设备-001",
"provisionDeviceKey": "test",
"provisionDeviceSecret": "123456"
}


平台创建设备并回凭证,设备写入 Flash 后改用令牌登录。风险:密钥泄露可被滥注设备。
3、检查预配置设备
设备配置策略改为 检查预配置设备:

流程与上面相同,但设备必须已在平台存在;未预录入则注册失败。相对更安全,适合产线烧录名单。
4、小结
| 策略 | 是否预录入 | 安全 |
|---|---|---|
| 允许创建新设备 | 否 | 依赖密钥保密 |
| 检查预配置设备 | 是 | 名单 + 密钥 |
