文档首页/ 设备接入 IoTDA/ 最佳实践/ 设备发放/ 通过设备发放实现批量设备自动注册
更新时间:2024-10-23 GMT+08:00
分享

通过设备发放实现批量设备自动注册

场景说明

当前物联网平台基于安全考虑,需要将设备的基本信息(例如设备ID、鉴权信息)注册到平台后,设备才能连接上平台。当用户的设备数不断增多时,如何安全且快速的注册设备尤为关键,需要采用安全的批量注册的场景。本文基于设备发放注册组功能,使用证书策略,带您快速体验设备批量自注册场景,并成功发放到指定的设备接入区域(本文以“华南-广州-友好用户环境”为例)。

整体流程

图1 整体流程图

如上图所示,用户可以在设备发放里设置证书策略,不同的证书策略可以将设备发放到不同的设备接入服务实例中,当设备携带了对应证书并成功接入到设备发放时,可以主动发起发放引导流程,从而将该设备按照证书的策略发放到对应的设备接入实例。

详细业务流程

图2 业务流程图

如上图所示,用户需要按照上图的设备发放步骤操作,然后才能通过证书策略发放到对应设备接入实例,当前样例代码已将全流程自动化,用户可以参考后续的步骤来完成批量自注册流程。

前提条件

  1. 已开通IoTDA的“华南-广州-华南友好环境”
  2. 进入“IoTDA华南-广州-华南友好环境”控制台,选择左侧导航栏“设备发放”服务,开通设备发放服务。
    图3 华南-广州-华南友好环境控制台
    图4 授权开通
    图5 授权成功
  3. 安装IntelliJ IDEA
    1. 访问IntelliJ IDEA官网,选择合适系统的版本下载。(本文以windows 64-bit系统IntelliJ IDEA 2019.2.3 Ultimate为例)。
      图6 IntelliJ IDEA官网
    2. 下载完成后,运行安装文件,根据界面提示安装。
  4. 安装Maven软件,通过 Maven 安装项目依赖是使用 Java SDK 的推荐方法,首先您需要下载安装 Maven ,安装完成后您只需在 Java 项目的 pom.xml 文件加入相应的依赖项即可。

导入批量自注册样例代码

  1. 下载JAVA批量自注册样例文档
  2. 解压后选择样例代码主目录下的pom.xml文件,并用IDEA开发者工具打开后,可以看到工程目录如下:

    图7 工程目录

  3. 修改AKSK.properties中的ak/sk参数,scopeId参数,accesspointid参数

    1. 用户可以在此处获取ak/sk。
    2. scopeId可以在此处获取。
      图8 获取注册组scopeId
    3. accesspointid可以在IoTDA的“华南-广州-友好用户环境”的总览界面获取到。
      图9 accesspointid获取

  4. 上述步骤替换后,代码导入和修改完毕。

权限配置

  1. 单击设备接入控制台页面右上角的账号,选择“统一身份验证”

    图10 统一身份认证

  2. 进入统一身份认证服务页面后,单击左侧“委托”,然后在右上角的输入框中输入“iotps”,再单击iotps这个委托名称右侧的“授权”按钮。

    图11 创建委托授权

  3. 进入授权页面后,在右上角的输入框中“iotda”,然后选择“IoTDA FullAccess”,再单击“下一步”

    图12 选择策略

  4. 跳转到如下页面后,直接单击右下角的“确定”即可。

    图13 设置最小授权范围

开始批量自注册引导

上述内容修改完后,可以运行iot-device-e2e-demo下的 BootstrapCertAuthRegisterGroup.java类,右键单击运行后,SDK会自动开始批量自注册过程。当前默认自注册大约1000设备,大约10TPS。

由于mqtt链接比较耗资源,大家可以把jvm最大内存调大一些。

1、单击IDEA菜单栏上方的“RUN”-“Edit Configurations”

2、单击“Modify options”-“Add VM options”

3、在下图的框中输入“-Xmx4096m”

4、运行程序,如下图所示:

图14 批量自注册

结果验证

  1. 在自动开始批量自注册之后,用户可以在IDEA的控制台看到自注册的日志。
    图15 自注册日志
  2. 用户可以在设备接入控制台看到已发放的设备数目。
    图16 查看已发放的设备数目列表
  3. 用户可以通过右上角的“所有状态”来过滤“在线”的设备,可以看到在线设备数一直在增长。
    图17 设备在线状态
  4. 用户可以回到设备发放控制台,看到SDK默认创建好的证书策略。
    图18 设备发放证书策略
  5. 用户可以看到SDK默认创建的注册组。
    图19 注册组列表
  6. 单击上图中的“注册组”名称,可以看到注册组里设备发放状态。
    图20 设备发放状态

相关文档