场景 2.2:动态注册子设备


场景 2.2 介绍通过 Edge 网关设备动态注册子设备。首先注册网关设备,在网关设备中烧录 SA,赋予调用 EnOS API 的权限,可以通过 API 创建子设备。


下图所示为场景 2.2 的消息流。


../../_images/connection_scenario_2.2.png


  1. Edge 开发者在 EnOS 云端注册一个Edge应用,并获得该应用的服务账号(SA),即 accessKeyaccessSecret


  2. 物联网实施人员登录到 EnOS 云端,在客户 OU 中进行如下配置:

    • 创建 Edge 产品,并注册 Edge 设备实例,来获得 Edge 设备三元组。

    • 为待接入 Edge 的子设备创建产品,获得 productkey


  3. 在 Edge 制造阶段,需要烧录以下凭据信息:

    • Edge 应用的 SA,将用于获得调用 EnOS API 的权限。

    • 由 EnOS 云端颁发的 Edge 设备三元组。

    • 子设备所属的产品 productkey,以及设备所属 OU 的标识符,即orgId


  4. EnOS 云端对 Edge 调用 API 进行如下鉴权:

    • Edge 携带 SA 来获得调用 EnOS API 的权限。

    • EnOS 云端将校验 Edge 连接请求中携带的 orgIdSA 参数,并验证 orgId 所对应的 OU 是否注册了 Edge 应用。

    • EnOS 云端校验请求参数 orgIdproductkey 的归属关系。如果 productkey 对应的产品不属于 orgId 对应的 OU,校验将不通过。


  5. EnOS 云端对 Edge 设备进行身份认证。

    • Edge 默认启用基于密钥的单向认证。Edge 携带三元组连接云端,其中云端会对 Edge 三元组进行认证,认证通过后,Edge 设备将被允许登录。

    • Edge 的首次登录会同时激活 Edge 设备,设备状态将从 未激活 更新为 在线


  6. 如果启用了基于证书的双向认证,EnOS Edge 向设备连接与管理发起证书请求,设备连接与管理将 Edge 证书返回给 Edge。


  7. 物联网实施人员选择以下任意一种方式,配置子设备注册:

    • 在 EnOS Edge 配置中心直接创建要接入的子设备。

    • 在 EnOS 应用门户的开发者控制台中创建要接入的子设备,然后在 Edge 配置中心进行绑定。由 Edge 代理子设备连接至 EnOS 云端。


  8. 注册后,子设备可通过 Edge 网关设备与云端进行数据传输。

    • Edge 与云端直接连接,子设备由 Edge 代理连接至云端。

    • Edge 与云端之间的数据传输,使用 MQTT 协议。

    • 如果启用基于证书的双向认证机制,Edge 与云端之间的数据传输内容将被证书加密。