检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
设备自动注册安全接入示例 场景说明 平台基于客户业务安全考虑,只有将设备的基本信息(例如设备ID、鉴权信息)注册到平台后,设备才能使用成功注册后的设备ID和鉴权信息接入物联网平台。当用户注册的设备不断增多时,如何安全且高效地注册设备变得尤为关键。
生成CA证书验证码/验证设备CA证书 功能介绍 应用服务器可调用此接口在物联网平台生成CA证书验证码或验证设备的CA证书 URI POST /v5/iotps/{project_id}/certificates/{certificate_id}/action 表1 路径参数 参数
密钥认证 创建设备时,认证方式选择密钥认证,用户为设备指定或者平台自动生成设备密钥。设备接入平台时,携带密钥(为避免密钥在通信链路中直接传输,实际传输值为密钥衍生内容,衍生方式参见MQTT CONNECT连接鉴权章节中的Password参数说明)。
生成密钥对(rootCA.key): 生成“密钥对”时输入的密码在生成“证书签名请求文件”、“CA证书”,“验证证书”以及“设备证书”时需要用到,请妥善保存。
最小长度:1 最大长度:360 auth_type 否 String 认证类型 register_group_secret 否 String 设备组密钥,设置该字段时平台将设备密钥置为指定值,若不设置则由平台自动生成。
生成密钥对(rootCA.key): 生成“密钥对”时输入的密码在生成“证书签名请求文件”、“CA证书”,“验证证书”以及“设备证书”时需要用到,请妥善保存。
生成密钥对(rootCA.key): 生成“密钥对”时输入的密码在生成“证书签名请求文件”、“CA证书”,“验证证书”以及“设备证书”时需要用到,请妥善保存。
生成密钥对(rootCA.key): 生成“密钥对”时输入的密码在生成“证书签名请求文件”、“CA证书”,“验证证书”以及“设备证书”时需要用到,请妥善保存。
生成密钥对(rootCA.key): 生成“密钥对”时输入的密码在生成“证书签名请求文件”、“CA证书”,“验证证书”以及“设备证书”时需要用到,请妥善保存。
验证码的生成为替换机制,即对于一个CA证书,即使此前的验证码未过期,也将被新生成的验证码替换。 使用OpenSSL工具为验证证书生成密钥对。 openssl genrsa -out verificationCert.key 2048 利用此验证码生成证书签名请求文件CSR。
操作步骤 使用OpenSSL工具为设备证书生成密钥对,即”设备证书(客户端证书)私钥”。
应用服务器可调用此接口重置设备秘钥,携带指定秘钥时平台将设备秘钥重置为指定的秘钥,不携带秘钥时平台将自动生成一个新的随机秘钥返回。注意:NB设备秘钥由于协议特殊性,只支持十六进制秘钥接入。 triggerBootstrapDevice:重引导设备。
connect消息鉴权失败时,平台会返回错误,并自动断开MQTT链路。 访问参数生成工具,填写注册设备后生成的设备ID(DeviceId)和密钥(DeviceSecret),生成设备连接鉴权所需的参数(ClientId、Username、Password)。 父主题: 接口说明
使用场景 全球设备,单点发放 无需人工干预,在设备出厂时对设备的接入信息进行硬编码,设备统一烧录全球统一的设备发放接入信息,通过全球统一的设备发放服务实现跨区域的自动发放能力。 多用户隔离 设备出厂前统一在设备发放管理和接入,根据配置实现出厂后接入到不同用户的IoT平台。
用IDEA/Eclipse打开SDK代码工程,修改iot-device-demo目录下的DEMO示例“BootstrapSample”中的参数,其中deviceId和secret替换为注册设备中生成的设备ID和密钥即可,bootstrapUri为上述终端节点。
所选区域未开通设备接入服务时,如果确定添加实例,系统将自动为您开通设备接入服务。不同区域设备接入服务价格不同,收费详情请参考价格说明。 父主题: 自定义策略
所选区域未开通设备接入服务时,如果确定添加实例,系统将自动为您开通设备接入服务。不同区域设备接入服务价格不同,收费详情请参考价格说明。 发放应用 选择对应设备接入服务区域已创建的应用。在物联网平台中,设备由应用统一管理。
图1 上传CA证书 在“上传CA证书”页面,填写“证书名称”,单击“添加文件”,上传此前“制作CA证书”步骤中生成的“CA证书(rootCA.crt文件)”,单击“确定”。
使用第三方上传CA,证书ID为设备发放服务生成的证书id,使用云证书CA,证书ID为云证书服务生成的证书ID。 最小长度:0 最大长度:256 func_urn 否 String 函数的URN(Uniform Resource Name),唯一标识函数。
用IDEA/Eclipse打开SDK代码工程,修改DEMO示例BootstrapSample中的参数,其中deviceId和secret替换为步骤3中生成的设备ID和密钥即可,bootstrapUri为获取设备发放终端节点对应的终端节点。