检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
st获取证书文件压缩包。 根据您使用的工具或语言取用压缩包内的证书文件: IoT Device SDK(C/C#)、MQTT.fx工具:使用压缩包中c目录下以pem或crt为后缀的文件; IoT Device SDK(Java):使用压缩包中java目录下以jks为后缀的文件; IoT
以设备密码为密钥,将设备参数与参数值拼接后的字符串为加密串进行hmacsha256算法加密。 加密串格式: clientId${clientId}deviceName${nodeId}productKey${productId}timestamp${timestamp} ${ClientId}: 固定格式 ${ProductId}
在证书管理服务创建根CA证书 根据云证书管理服务的指导说明,在云证书管理服务控制台创建根CA证书。 添加自定义策略 图1 添加自定义策略 新增注册组 图2 新增注册组 图3 添加云证书自定义策略注册组 创建并下载设备证书 图4 创建云证书注册组设备证书 图5 创建云证书注册组设备证书详情
上传并验证CA证书 登录设备发放控制台,进入“证书”界面,单击右上角“上传CA证书”,填写“证书名称”并上传上述“制作CA证书”步骤后生成的“CA证书(rootCA.crt文件)”,单击“确定”。 图1 上传CA证书 验证步骤1中上传的CA证书,只有成功验证证书后该证书方可使用。 为验证证书生成密钥对。
crt “-days”后的参数值指定了该证书的有效天数,此处示例为50000天,您可根据实际业务场景和需要进行调整。 上传并验证CA证书 登录设备发放控制台,进入“证书”界面,单击右上角“上传CA证书”,填写“证书名称”并上传上述“制作CA证书”步骤后生成的“CA证书(rootCA.crt文件)”,单击“确定”。
crt “-days”后的参数值指定了该证书的有效天数,此处示例为50000天,您可根据实际业务场景和需要进行调整。 上传并验证CA证书 登录设备发放控制台,进入“证书”界面,单击右上角“上传CA证书”,填写“证书名称”并上传上述“制作CA证书”步骤后生成的“CA证书(rootCA.crt文件)”,单击“确定”。
自定义域名允许设备指定要连接到 IoTDA 的自定义完全限定域名 (FQDN)。使用自定义域名,用户可以管理自己的服务器证书,例如用于签署证书的根证书颁发机构 (CA)、签名算法、以及证书的生命周期。 使用场景 自己管理服务器证书的根证书颁发机构 (CA)、签名算法、以及证书的生命周期等。 出于品牌推广目的向客户公开公司自己的域名。
SDK 证书资源 当设备和应用需要对IoT平台进行校验时可使用以下证书。 此证书文件只适用于华为云物联网平台,且必须配合对应域名使用。 CA证书具有一个过期日期,在该日期后,这些证书将无法用于验证服务器的证书;请在 CA证书的过期日期前替换这些证书,以确保设备可以正常的连接到IoT平台。
OCSP校验:本文统一指定为物联网平台对设备侧证书的有效性校验。 OCSP装订(OCSP Stapling):也称服务端OCSP,是TLS证书状态查询扩展,作为在线证书状态协议的替代方法对X.509证书状态进行查询,服务器主动检查自身证书状态,在TLS握手时发送已缓存的OCSP响应,用户只需验证该响应的时效性而不用
此证书文件只适用于华为云物联网平台,且必须配合对应域名使用。 CA证书具有一个过期日期,在该日期后,这些证书将无法用于验证服务器的证书;请在 CA证书的过期日期前替换这些证书,以确保设备可以正常的连接到IoT平台。 表3 证书资源 证书包名称 region&版本 证书类型 证书格式 说明 下载 certificate
有些设备可能没有证书,又需要使用设备发放功能。对于此类设备,设备发放提供密钥注册组功能。 密钥认证类型的设备组是一个安全性不完备的方案,建议使用证书作为注册组的认证方式。 每个设备的设备代码应该只包含该设备的相应派生设备密钥。 不要在设备代码中包含你的注册组密钥。 泄露的注册组密钥可
SDK使用指南(C) IoT Device SDK(C)提供设备接入华为云IoT物联网平台的C版本的SDK,提供设备和平台之间通讯能力,以及设备服务、网关服务、OTA等高级服务,并且针对各种场景提供了丰富的demo代码。相关集成指导请参考IoT Device SDK(C)使用指南。 使用说明
SDK使用指南(C) IoT Device SDK(C)提供设备接入华为云IoT物联网平台的C版本的SDK,提供设备和平台之间通讯能力,以及设备服务、网关服务、OTA等高级服务,并且针对各种场景提供了丰富的demo代码。相关集成指导请参考IoT Device SDK(C)使用指南。 使用说明
获取到的对端证书为含有两个证书的证书链,证书链中: 第0个证书为标识平台身份的平台证书, 第1个证书为签发平台证书的中级CA。 设备验证平台身份时,需要使用中级CA的颁发者验证该证书链。 您需要查看设备端填写的平台侧根CA的使用者信息与上述中级CA的颁发者信息是否一致。若一致,则更进一步地,需要将命令行窗
mo MQTTS接入中证书的使用方式,或访问资源获取下载平台的CA证书。 如何排查设备鉴权失败问题? 检查是否网络问题。使用常用的网络检查命令ping、telnet、traceroute检查网络是否正常,如果网络不正常请检查下本地防火墙策略。 检查设备证书或信息,设备id,设备密钥是否正确。
注册单个设备 归属于某个产品下的设备实体,每个设备具有一个唯一的标识码。设备可以是直连物联网平台的设备,也可以是代理子设备连接物联网平台的网关。您可以在物联网平台注册您的实体设备,通过平台分配的设备ID和密钥,在集成了SDK后,您的设备可以接入到物联网平台,实现与平台的通信及交互。 物联网
MQTT(S)协议-密钥鉴权是指设备在接入物联网平台时,携带设备ID和密钥以完成设备的接入鉴权。对于使用MQTTS协议接入的设备,需要在设备侧预置CA证书;对于使用MQTT非安全协议接入的设备,无需在设备侧预置CA证书。 使用MQTT(S)协议-密钥接入的鉴权流程 图1 MQTT(S)协议-密钥接入鉴权流程图
parameters 是 Object 参数说明:预调配模板参数, ,配置格式为{"parameter":{"type":"String"}} ,其中parameter目前支持从预调配设备的证书的使用者字段提取内容,证书必须包含模板中定义的所有参数值,华为云IoT平台定义了可在预调配模板中声明和引用的如下参数:
MQTT协议中CONNECT消息的设备证书信息。 表5 certificate_info证书信息 参数名称 参数类型 是否必选 描述 common_name String 是 设备携带设备证书时,从设备证书中解析的commonName信息。 fingerprint String 是 设备携带设备证书时,从设备证书中解析的指纹信息。
-g:用于加载平台证书; 找到文件解压的对应目录,如下图所示。 代码目录介绍如下: DigiCertGlobalRootCA.crt.pem:平台证书文件; MqttDemo.js:Node.js源码,包含MQTT/MQTTS连接到平台,并进行属性上报,命令下发; Demo里的关键工程配置参数。其中MqttDemo