检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
结合函数服务通过自定义策略发放证书认证的设备 场景说明 本文以MQTT.fx的设备模拟器替代真实的设备,结合函数工作流服务(FunctionGraph),带您快速体验结合函数服务使用设备发放服务,通过自定义策略将设备发放到指定的物联网平台(设备接入实例)上。 整体流程 使用证书认证的设备采用自定义策略发放设备操作流程如下图所示。
设备 注册设备 注册组
页查询时由物联网平台返回获得。分页查询时物联网平台是按marker也就是记录ID降序查询的,越新的数据记录ID也会越大。若填写marker,则本次只查询记录ID小于marker的数据记录。若不填写,则从记录ID最大也就是最新的一条数据开始查询。如果需要依次查询所有数据,则每次查询
创建静态策略详情 注册设备 在设备发放控制台,注册MQTT设备,其中安全模式选择密钥模式(如果需要下发初始化配置,那么对应在初始设备配置选项中填写对应的JSON字符串,设备发放不理解该字段,只是透传该JSON字符串,由设备理解解析。如果不需要下发改字段则不填)。 图3 注册设备 图4 创建密钥模式静态策略设备
添加静态跨region策略 注册设备 在设备发放控制台,注册MQTT设备,其中安全模式选择密钥模式(如果需要下发初始化配置,那么对应在初始设备配置选项中填写对应的JSON字符串,设备发放不理解该字段,只是透传该JSON字符串,由设备理解解析。如果不需要下发该字段则不填)。 图6 注册设备 图7 创建密钥模式静态策略设备
功能简介 设备发放服务主要用于设备在多个IoT平台实例的发放、接入和迁移。设备在出厂时只需要烧录一个地址,然后在云上通过配置或者通过代码控制不同的设备接入不同的IoT平台。设备上电后收到设备发放下发的新的物联网平台连接地址,直接连接新的地址,免去二次烧录设备信息,同时还支持初始化的设备信息同步。
注册组 MQTT证书接入的设备,可以在设备发放创建一个注册组,绑定对应的CA证书和自定义策略,可以实现批量设备的自注册,实现设备一键上电即可上云的动作,可在注册组详情中查看该注册组下所有的设备。 进入“设备-注册组列表”界面,单击左上角“新增注册组”。 图1 新增注册组 按照下方参数说明填写关键参数信息后,完成创建。
签发设备证书 已上传并验证CA证书后,就可以使用此CA证书签发设备证书供设备使用。 操作步骤 使用OpenSSL工具为设备证书生成密钥对,即”设备证书(客户端证书)私钥”。 openssl genrsa -out deviceCert.key 2048 使用密钥对生成证书签名请求文件:
X.509认证设备。 图3 注册设备 图4 注册云证书设备 下载设备证书 设备注册成功后,单击设备进入设备详情页面,单击“下载”按钮下载设备证书,并烧录到设备。 图5 下载云证书设备证书 连接鉴权 MQTT.fx 是目前主流的MQTT桌面客户端,它支持 Windows, Mac,
运行DEMO程序,看到如下日志,代表设备发放成功,并且已经收到设备发放下发的设备接入地址。如果程序运行没报错,在对应的设备接入平台可以看到设备,并已在线。 收到设备发放下发的设备接入地址后,需要关闭设备侧的设备发放的连接,用的新的URL地址与设备接入通信,进行相关业务。 新增IoT接入实例
设备管理 注册设备 查询设备列表 查询设备 修改设备 删除设备 操作设备 重置设备指纹 发放设备 父主题: API
设备请求引导消息 接口功能 设备向发放服务请求对应设备接入实例的引导信息。 Topic 表1 上报Topic说明 Topic $oc/devices/{device_id}/sys/bootstrap/up 消息发送方 设备 消息接收方 设备发放平台 示例 设备向发放服务发送的payload为空。
从这里开始 表1 设备发放操作步骤列表 使用阶段 步骤 设备开发 1. 开通设备接入服务,参考开发指南,完成设备开发。 LiteOS设备(LwM2M),设备需要具有设备发放功能。 原生MQTT协议设备,需要完成设备引导接口开发,使设备具有设备发放功能。 注:若设备需要使用物联网卡,可在全球SIM联接服务购买物联网卡和套餐。
设备CA证书管理 上传设备CA证书 获取设备CA证书列表 删除设备CA证书 查询单个设备CA证书 更新单个设备CA证书 生成CA证书验证码/验证设备CA证书 父主题: API
册后设备才可以接入物联网平台。 查询设备列表 应用服务器可调用此接口查询物联网平台中的设备信息列表。 查询设备 应用服务器可调用此接口查询物联网平台中指定设备的详细信息。 修改设备 应用服务器可调用此接口修改物联网平台中指定设备的基本信息。 删除设备 应用服务器可调用此接口在物联
设备接收引导信息 接口功能 设备接收发放服务下发的引导信息。 Topic 表1 下发Topic说明 Topic $oc/devices/{device_id}/sys/bootstrap/down 消息发送方 设备发放平台 消息接收方 设备 参数说明 表2 下发参数说明 参数 必选/可选
止通信数据在传输过程被篡改造成安全风险。 X.509是一种用于通信实体鉴别的数字证书,物联网平台支持设备使用自己的X.509证书进行认证鉴权。使用X.509认证技术时,设备无法被仿冒,避免了密钥被泄露的风险。 设备CA证书管理 本章节介绍设备CA证书的制作,以及如何在物联网平台上传、验证和管理设备CA证书。
关键字来源指的是用于匹配关键字的字符串信息的数据来源。目前支持设备名称与数据上报两种形式。 如果为设备名称,则匹配关键字的字符串取设备创建后的设备名称。 如果为数据上报,则匹配关键字的字符串取设备发放过程中,发起发放请求Topic“$oc/devices/${device_id}/sys/bootstrap/up”
会返回对应设备的设备接入服务的地址。 后续操作 至此,您已完成了设备发放的流程。设备发放已成功将您的设备【接入IoTDA所需的必要信息】预置到了IoTDA实例中。 如您想要体验物联网平台的更多强大功能,您可通过如下步骤完成对IoTDA的后续操作: 取用引导消息中的设备接入地址;
有些设备可能没有证书,又需要使用设备发放功能。对于此类设备,设备发放提供密钥注册组功能。 密钥认证类型的设备组是一个安全性不完备的方案,建议使用证书作为注册组的认证方式。 每个设备的设备代码应该只包含该设备的相应派生设备密钥。 不要在设备代码中包含你的注册组密钥。 泄露的注册组密钥可能会危及所有使用该密钥进行身份验证的设备的安全。