检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
设备安全认证 设备接入设备发放和接入平台之前,需要通过身份认证。当前,物联网平台支持密钥认证和X.509证书认证两种认证方式进行设备身份认证。 密钥认证 创建设备时,认证方式选择密钥认证,用户为设备指定或者平台自动生成设备密钥。设备接入平台时,携带密钥(为避免密钥在通信链路中直接
认证鉴权 调用接口有如下两种认证方式,您可以选择其中一种进行认证鉴权。 Token认证:通过Token认证调用请求。 AK/SK认证:通过AK(Access Key ID)/SK(Secret Access Key)加密调用请求。推荐使用AK/SK认证,其安全性比Token认证要高。
结合函数服务通过自定义策略发放证书认证的设备 场景说明 本文以MQTT.fx的设备模拟器替代真实的设备,结合函数工作流服务(FunctionGraph),带您快速体验结合函数服务使用设备发放服务,通过自定义策略将设备发放到指定的物联网平台(设备接入实例)上。 整体流程 使用证书认证的设备采用自定义策略发放设备操作流程如下图所示。
添加证书策略 采用华为云证书认证的设备,三种策略都支持引导,以“证书策略”为例,在“设备发放”创建对应“华为云证书”的证书策略。 图1 添加证书策略 图2 添加云证书策略详情 创建设备 在设备发放控制台,注册MQTT设备,其中安全模式选择X.509认证模式,证书类型选择云证书,填写设备证书名称,注册X
常见问题1:设备发放流程中使用到的证书都有哪些,它们有何区别? 设备发放提供证书认证方式,证书认证为双向认证过程,涉及到设备发放(平台)和设备两端,过程如下图所示。 双向证书认证过程使用到了如下几类证书: 表1 证书 说明 证书及其私钥持有者 签发者 服务端证书 步骤2中,设备发放设备侧将该证书返回设备。
在设备发放控制台,注册MQTT设备,其中安全模式选择X.509认证模式,选择对应的CA证书,填写证书指纹,注册X.509认证设备。 图7 注册设备 图8 创建证书模式证书策略设备 证书指纹是根据证书生成的唯一识别证书的标识。如果支持设备自注册,在设备首次认证时不会去认证设备ID和设备证书的关系。 连接鉴权
设备发放业务流程 设备启动后,通过Bootstrap流程(设备出厂时预置设备发放平台地址作为引导服务器地址),引导物联网设备在初次上电时获得正确的目标物联网平台地址,继而完成设备与平台的建链过程。保证设备安全可靠的按业务目标上线,最大程度上减少人为干预的错误可能。 流程如下: 首
场景说明 有些设备可能没有证书,又需要使用设备发放功能。对于此类设备,设备发放提供密钥注册组功能。 密钥认证类型的设备组是一个安全性不完备的方案,建议使用证书作为注册组的认证方式。 每个设备的设备代码应该只包含该设备的相应派生设备密钥。 不要在设备代码中包含你的注册组密钥。 泄露的注
证书。 证书指纹:根据证书生成的唯一识别证书的标识。与“自注册开关”参数选填其一或都填。 自注册开关:如果支持设备自注册,在设备首次认证时不会去认证设备ID和设备证书的关系。与“证书指纹”参数选填其一或都填。 MQTT设备批量发放操作 本文以注册3个MQTT设备,发放到中国站“华
参数 参数类型 描述 auth_type String 鉴权类型。支持秘钥认证接入(SECRET)和证书认证接入(CERTIFICATES)。使用秘钥认证接入方式(SECRET)填写secret字段,使用证书认证接入方式(CERTIFICATE)填写fingerprint字段,如果C
证书策略,即通过平台认证设备的设备CA证书匹配的发放策略。每条证书策略实例指:匹配上该策略实例的设备,将会被发放到该策略实例关联的设备接入实例的对应资源空间(即应用)下。 设备匹配证书策略实例的机制为: 设备的发放策略指定为“证书策略”时,其认证方式也必须为X.509证书认证且同时指定了
参数类型 描述 auth_type 否 String 鉴权类型。支持秘钥认证接入(SECRET)和证书认证接入(CERTIFICATES)。使用秘钥认证接入方式(SECRET)填写secret字段,使用证书认证接入方式(CERTIFICATE)填写fingerprint字段,如果C
参数 参数类型 描述 auth_type String 鉴权类型。支持秘钥认证接入(SECRET)和证书认证接入(CERTIFICATES)。使用秘钥认证接入方式(SECRET)填写secret字段,使用证书认证接入方式(CERTIFICATE)填写fingerprint字段,如果C
函数的URN(Uniform Resource Name),唯一标识函数。 最小长度:1 最大长度:360 auth_type String 认证类型 init_config String 注册组的初始化配置。必须为json字符串 最小长度:1 最大长度:65535 请求示例 {
设备数量不多; 对设备身份标识和认证信息可提前规划; 产线侧与应用侧可紧密配合。 设备数量多; 对设备身份标识和认证信息可提前规划。 设备数量较多; 设备能力强; 对设备注册的灵活性要求高。 过程 应用侧通过多次调用单个注册API将设备信息(包括但不限于身份标识和认证信息)逐一注册到平台;
参数 参数类型 描述 auth_type String 鉴权类型。支持秘钥认证接入(SECRET)和证书认证接入(CERTIFICATES)。使用秘钥认证接入方式(SECRET)填写secret字段,使用证书认证接入方式(CERTIFICATE)填写fingerprint字段,如果C
Token方式认证时,必须填充该字段。用户Token也就是调用获取用户Token接口的响应值,该接口是唯一不需要认证的接口。 API同时支持使用AK/SK认证,AK/SK认证是使用SDK对请求进行签名,签名过程会自动往请求中添加Authorization(签名认证信息)和X-Sdk-Date(请求发送的时间)请求头。
Name),唯一标识函数。 最小长度:1 最大长度:360 auth_type 否 String 认证类型 register_group_secret 否 String 设备组密钥,设置该字段时平台将设备密钥置为指定值,若不设置则由平台自动生成。 最小长度:44 最大长度:172 init_config
最大长度:360 registration_group_id String 注册组id,用于唯一标识一个注册组 auth_type String 认证类型 registration_group_name String 注册组名称。 最小长度:1 最大长度:256 init_config String
删除设备 功能介绍 应用服务器可调用此接口在物联网平台上删除指定设备。若设备下连接了非直连设备,则必须把设备下的非直连设备都删除后,才能删除该设备。若设备已发放成功,此接口将级联删除设备接入实例中的该设备。 URI DELETE /v5/iotps/{project_id}/devices/{device_id}