Appearance
获取和烧录设备证书
概述
物理设备可通过两种方式获取设备管理平台颁发的设备证书(三元组ProductKey、DeviceName和DeviceSecret):设备厂商将证书烧录到设备上和设备上电联网后从云端获取证书。
烧录设备证书
该方案是设备厂商获取到设备管理平台颁发的设备证书后,在产线上将证书烧录到设备。设备上电联网之后,使用该证书连接到设备管理平台。本方案需要设备厂商对自己的产线进行改造,使产线具有烧录证书的能力。
设备从云端获取证书
该方案是设备上电联网后,自动获取IP地址,并连接设备管理平台的云端证书服务器获取证书。在生产时,设备厂商无需为此类设备烧录设备证书。设备上电联网后,再从厂商的云端服务器获取设备管理平台颁发的设备证书,继而连接设备管理平台。采用这种方案可以不用在产线上设计证书烧录过程,可加快设备的量产速度。
将证书烧录至设备
本文介绍在产线上将证书(ProductKey、DeviceName和DeviceSecret)烧录至设备的方案。
本方案需要您对设备产线做相应的改造,具体改造方案需您自行设计。下面仅介绍可用的烧录方案。
获取设备证书
添加设备时,系统会自动生成设备证书。您可以按以下方式获取设备证书,将获得的证书写入您自己的数据库或者文件中。
在设备管理平台控制台上单个创建设备后,获取设备证书。
创建成功后,将自动弹出添加完成对话框,单击前往查看或一键复制设备证书,获取设备证书。
在设备列表页签下,单击设备对应的查看按钮,进入设备详情页设备信息页签下,查看设备证书。
在设备管理平台控制台上批量添加设备后,下载该批次设备的证书文件。
添加成功后,在添加完成提示框中,单击下载设备证书,即可下载该批次设备证书。
在设备页的批次管理页签下,单击产品对应的下载CSV,下载对应批次下所有设备的证书。
证书烧录方式
获取到设备证书之后,可以在产线上启动一个服务器,用于分发设备证书。编程器、烧录器或设备可向该证书分发服务器申请证书,并将获得的证书烧录到设备的NVRAM或Flash。
支持两种烧录方式,您可以根据实际情况,选择使用相应的证书烧录方案。流程如下图所示。
![](/image/device/quickAccess/get-secret.png)
两种烧录方式的说明如下。
使用编程器或烧录器烧录设备证书。
需要您对现有的编程器或烧录器程序进行改造,让PC可以向证书分发服务器申请设备证书,然后通过编程器或烧录器将设备证书烧入到芯片或设备上。
此方案需要在产线上部署多台烧录器或编程器,进行证书烧录。您可以根据设备产量的大小,增加或减少烧录器或编程器的数量。
设备主动获取证书。
需要开发设备固件,使设备上电后,自动检测是否有有效的证书。当发现无有效证书时,主动向证书分发服务器申请设备证书,然后将获得的证书写入NVRAM或Flash。
此方案无需在产线上部署烧录器或编程器,并且多个设备可以同时向证书分发服务器申请设备证书。
设备从云端获取证书
本方案不在设备上烧录设备证书,而是设备上电联网后,向设备厂商的认证服务器发起请求,获取设备证书(ProductKey、DeviceName和DeviceSecret)。(后续设备管理平台会提供通用的认证服务器,设备厂商如果需要,亦可直接调用)。因为厂商生产时网络原因或安全性特殊要求,可自行实现认证服务器逻辑。
设备管理平台认证服务器实现原理
设备管理平台需要先注册设备,生成设备证书信息(ProductKey、DeviceName和DeviceSecret)。同时,还需要维护真实设备的唯一编码信息与设备管理平台维护的设备相对应,比如设备MAC或者SN等,在设备管理平台添加设备的同时,需要填写此信息。
设备通电后,请求认证服务器,带上设备的唯一编码请求获取设备证书(ProductKey、DeviceName和DeviceSecret),此过程必须安全可靠,设备唯一信息不能泄漏。
设备正常拉取认证信息后,利用设备证书与设备管理平台通信
流程如下图所示。
![](/image/device/quickAccess/auth-secret.png)