全部产品
Search
文档中心

阿里云物联网平台:一型一密

更新时间:Jul 31, 2023

一型一密认证方式下,同一产品下所有设备可以烧录相同的设备标志信息,即所有设备包含相同的产品证书(ProductKey和ProductSecret)。设备发送激活请求时,物联网平台会进行身份确认,认证通过后,下发设备接入所需信息。

背景信息

一型一密认证支持两种使用方式:一型一密免预注册、一型一密预注册,对比说明如下表所示。

重要
  • 采用一型一密认证方式,设备烧录相同的标志信息,存在产品证书泄露风险。您可以在物联网平台控制台的产品详情页面,手动关闭动态注册开关,拒绝新设备的认证请求。

  • 一型一密动态注册时必须使用TLS加密,如果您的设备端SDK无法运行TLS加密,则无法使用一型一密认证方式,请采用一机一密认证方式。

对比项

一型一密免预注册

一型一密预注册

接入协议

MQTT协议

HTTPS协议、MQTT协议

支持地域

华东2(上海)、华北2(北京)

  • HTTPS协议:除华北2(北京)、华南1(深圳)以外的所有地域。

  • MQTT协议:物联网平台支持的所有地域。

支持实例

企业版实例

企业版实例和公共实例

功能特点

不需要在物联网平台预注册设备DeviceName。

需要在物联网平台预注册设备DeviceName。

对于网关子设备,仅支持预注册方式。

使用限制

物联网平台允许最多5个物理设备使用同一组ProductKey、ProductSecret、DeviceName进行激活,并为不同物理设备下发不同的ClientID、DeviceToken。

  • 同一组设备证书只能用于激活一个物理设备。

    若DeviceName名下已激活物理设备A,但物理设备B需要使用该DeviceName,则您可以在物联网平台上删除设备A,使设备A的DeviceSecret作废,再使用原DeviceName重新添加设备,激活物理设备B。

  • 若设备因丢失DeviceSecret等原因需要重新激活,需您调用ResetThing接口,重置设备状态为未激活,然后将设备重新联网激活。此时,物联网平台下发的DeviceSecret不变。

使用流程

一型一密认证流程示意图如下。

一型一密流程

直连设备动态注册

直连设备动态注册分为一型一密预注册和一型一密免预注册。

一型一密预注册

  1. 创建产品:创建产品时,节点类型直连设备

  2. 开启动态注册:在已创建产品的产品详情页面,开启动态注册开关。

    物联网平台将进行短信验证,以确认是您本人操作。

    说明

    若设备发出激活请求时,物联网平台校验发现该开关未开启,将拒绝新设备的动态激活请求。已激活设备不受影响。

    开启动态注册
  3. 批量添加设备单个添加设备:使用一型一密预注册认证方式接入设备,您需在已创建产品下添加设备。

    • 因设备激活时会校验DeviceName,建议您采用可以直接从设备中读取到的ID,如设备的MAC地址、IMEI或SN码等,作为DeviceName使用。

    • 添加设备成功后,物联网平台为设备颁发DeviceSecret。设备初始状态为未激活

  4. 产线烧录:开发设备端SDK,完成产线烧录。

    1. 选择直连设备接入物联网平台的协议:MQTT协议和HTTPS协议。

      注册认证的开发方法如下:

    2. 根据实际业务需求,完成设备端SDK开发,例如设备物模型Topic通信、设备自定义Topic通信、OTA升级、设备影子等功能开发。

      设备端开发,请参见使用设备端SDK接入

      重要

      如果使用物联网平台提供的C Link SDK,对于一型一密免预注册方式,请在设备端使用4.X版C Link SDK。该SDK包含DAS(设备取证服务),可以对设备可能产生的安全事件进行风控。

      物联网平台不承担因设备端没有使用4.X版C Link SDK而导致的安全风险。

    3. 在产线上,将已开发完成的设备SDK烧录至设备中。

  5. 设备联网:设备上电联网后,携带ProductKeyProductSecretDeviceName发起认证请求。

  6. 在物联网平台激活设备。

    物联网平台校验通过后,为实际物理设备下发步骤3中为该设备颁发的DeviceSecret。至此,物理设备获得连接物联网平台所需的设备证书(ProductKeyDeviceNameDeviceSecret),可以与物联网平台建立连接,进行数据通信。

一型一密免预注册

  1. 创建产品:创建产品时,节点类型直连设备

  2. 开启动态注册:在已创建产品的产品详情页面,开启动态注册开关。

    物联网平台将进行短信验证,以确认是您本人操作。

    说明

    若设备发出激活请求时,物联网平台校验发现该开关未开启,将拒绝新设备的动态激活请求。已激活设备不受影响。

    开启动态注册
  3. 产线烧录:开发设备端SDK,完成产线烧录。

    1. 选择直连设备接入物联网平台的协议:MQTT协议。

      注册认证的开发方法如下:基于MQTT通道的设备动态注册

    2. 根据实际业务需求,完成设备端SDK开发,例如设备物模型Topic通信、设备自定义Topic通信、OTA升级、设备影子等功能开发。

      设备端开发,请参见使用设备端SDK接入

      重要

      如果使用物联网平台提供的C Link SDK,对于一型一密免预注册方式,请在设备端使用4.X版C Link SDK。该SDK包含DAS(设备取证服务),可以对设备可能产生的安全事件进行风控。

      物联网平台不承担因设备端没有使用4.X版C Link SDK而导致的安全风险。

    3. 在产线上,将已开发完成的设备SDK烧录至设备中。

  4. 设备联网:设备上电联网后,携带ProductKeyProductSecretDeviceName发起认证请求。

  5. 在物联网平台激活设备。

    • 物联网平台校验通过后,下发ClientIDDeviceToken。设备后续通过ProductKeyProductSecret和下发的ClientIDDeviceToken与物联网平台建立连接,进行数据通信。

    • 当多个不同ClientID的物理设备共用一个DeviceName时,物联网平台控制台产品详情页将提示当前产品下有设备同时有两个ClientID。您可根据以下操作,指定保留唯一物理设备,或清除所有物理设备:

      1. 产品详情页面,单击该提示后的查看,跳转到产品下的风险设备列表。

      2. 设备管理 > 设备页面,单击列表中目标设备对应的查看,进入设备详情页面,页面显示当前连接的ClientID,单击ClientID右侧的切换清除

        • 切换:从下拉列表选择ClientID,通过该ClientID对应设备的首次连接时间,或者单击日志服务,通过该ClientID对应设备的云端运行日志,判断其是否为需要保留的物理设备。选择要保留的物理设备的ClientID,单击确认。未被选择的ClientID对应物理设备,将被禁止连接。

          说明

          云端运行日志说明,请参见云端运行日志

        • 清除:所有物理设备都将被禁止连接。

网关子设备动态注册

重要

网关设备的动态注册方法与直连设备动态注册方法相同。网关子设备动态注册只支持一型一密预注册。

  1. 创建产品:为网关和子设备分别创建对应产品。网关对应产品的节点类型网关设备,子设备对应产品的节点类型网关子设备

  2. 开启动态注册:在已创建网关与子设备对应产品的产品详情页面,开启动态注册开关。

    物联网平台将进行短信验证,以确认是您本人操作。

    说明

    若设备发出激活请求时,物联网平台校验发现该开关未开启,将拒绝新设备的动态激活请求。已激活设备不受影响。

  3. 批量添加设备单个添加设备:在已创建网关和子设备对应产品下添加设备。

    • 因设备激活时会校验DeviceName,建议您采用可以直接从设备中读取到的ID,如设备的MAC地址、IMEI或SN码等,作为DeviceName使用。

    • 添加设备成功后,物联网平台为设备颁发DeviceSecret。设备初始状态为未激活

  4. 产线烧录。

    1. 基于MQTT通道的设备动态注册子设备的MQTT动态注册:配置网关设备证书信息和接入域名,在网关设备的SDK中,初始化子设备管理实例,配置网关与子设备的拓扑关系和注册认证。

      网关与子设备拓扑关系管理的详细内容,请参见管理拓扑关系

    2. 根据实际业务需求,完成设备端SDK开发,例如网关设备代理子设备通信功能开发。

      设备端开发,请参见使用设备端SDK接入

    3. 在产线上,将已开发完成的网关设备SDK和子设备的ProductKey烧录至网关设备,将子设备的设备证书烧录至子设备。

  5. 设备联网:网关和子设备上电联网后,网关设备携带子设备的ProductKey、DeviceName,发起认证请求。

  6. 物联网平台激活设备。

    网关设备的激活说明,请参见直连设备动态注册。子设备通过网关设备请求上线的详细说明,请参见子设备上线