检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 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),带您快速体验结合函数服务使用设备发放服务,通过自定义策略将设备发放到指定的物联网平台(设备接入实例)上。 整体流程 使用证书认证的设备采用自定义策略发放设备操作流程如下图所示。
在设备发放控制台,注册MQTT设备,其中安全模式选择X.509认证模式,选择对应的CA证书,填写证书指纹,注册X.509认证设备。 图7 注册设备 图8 创建证书模式证书策略设备 证书指纹是根据证书生成的唯一识别证书的标识。如果支持设备自注册,在设备首次认证时不会去认证设备ID和设备证书的关系。 连接鉴权
添加证书策略 采用华为云证书认证的设备,三种策略都支持引导,以“证书策略”为例,在“设备发放”创建对应“华为云证书”的证书策略。 图1 添加证书策略 图2 添加云证书策略详情 创建设备 在设备发放控制台,注册MQTT设备,其中安全模式选择X.509认证模式,证书类型选择云证书,填写设备证书名称,注册X
常见问题1:设备发放流程中使用到的证书都有哪些,它们有何区别? 设备发放提供证书认证方式,证书认证为双向认证过程,涉及到设备发放(平台)和设备两端,过程如下图所示。 双向证书认证过程使用到了如下几类证书: 表1 证书 说明 证书及其私钥持有者 签发者 服务端证书 步骤2中,设备发放设备侧将该证书返回设备。
证书策略,即通过平台认证设备的设备CA证书匹配的发放策略。每条证书策略实例指:匹配上该策略实例的设备,将会被发放到该策略实例关联的设备接入实例的对应资源空间(即应用)下。 设备匹配证书策略实例的机制为: 设备的发放策略指定为“证书策略”时,其认证方式也必须为X.509证书认证且同时指定了
设备clientId由3个部分组成:设备ID、设备身份标识类型、用户标识ID(ScopeID)。通过下划线“_”分隔,设备身份标识类型固定值为0 例:5f052ac562369102d42b0fb6_0_ff5bbx7a488f 其他场景: 设备clientId由4个部分组成:设备ID、设备身份标识类型、密码签名
设备数量不多; 对设备身份标识和认证信息可提前规划; 产线侧与应用侧可紧密配合。 设备数量多; 对设备身份标识和认证信息可提前规划。 设备数量较多; 设备能力强; 对设备注册的灵活性要求高。 过程 应用侧通过多次调用单个注册API将设备信息(包括但不限于身份标识和认证信息)逐一注册到平台;
注册/注册组 认证类型 策略类型 示例 注册 证书认证 证书策略 MQTT X.509证书认证设备使用证书策略发放示例 注册 密钥认证 静态策略 MQTT 密钥设备使用静态策略发放示例 注册组 证书认证 自定义策略 MQTT 注册组自定义策略发放示例 注册组 云证书认证 证书策略 MQTT
密钥设备使用静态策略发放示例 MQTT X.509证书认证设备使用证书策略发放示例 MQTT 注册组自定义策略发放示例 MQTT 华为云X.509证书认证设备使用证书策略发放示例 MQTT 华为云证书注册组发放示例 MQTT 注册组静态策略发放示例 MQTT 注册组密钥认证静态策略发放示例 MQTT 密钥设备跨账号使用静态策略发放示例
参数 参数类型 描述 auth_type String 鉴权类型。支持秘钥认证接入(SECRET)和证书认证接入(CERTIFICATES)。使用秘钥认证接入方式(SECRET)填写secret字段,使用证书认证接入方式(CERTIFICATE)填写fingerprint字段,如果C
参数类型 描述 auth_type 否 String 鉴权类型。支持秘钥认证接入(SECRET)和证书认证接入(CERTIFICATES)。使用秘钥认证接入方式(SECRET)填写secret字段,使用证书认证接入方式(CERTIFICATE)填写fingerprint字段,如果C
参数 参数类型 描述 auth_type String 鉴权类型。支持秘钥认证接入(SECRET)和证书认证接入(CERTIFICATES)。使用秘钥认证接入方式(SECRET)填写secret字段,使用证书认证接入方式(CERTIFICATE)填写fingerprint字段,如果C
参数 参数类型 描述 auth_type String 鉴权类型。支持秘钥认证接入(SECRET)和证书认证接入(CERTIFICATES)。使用秘钥认证接入方式(SECRET)填写secret字段,使用证书认证接入方式(CERTIFICATE)填写fingerprint字段,如果C
位。 在业务中的用途 在证书认证方式中,平台存储设备CA证书,不存储设备证书完整内容,但会存储、计算和校验设备证书指纹。 为确保设备与平台通信的安全性,在双向认证过程中,平台不仅使用设备CA对设备证书进行验证,还会校验【设备关联的证书指纹】与【双向认证使用的设备证书的指纹】的一致性。
Token方式认证时,必须填充该字段。用户Token也就是调用获取用户Token接口的响应值,该接口是唯一不需要认证的接口。 API同时支持使用AK/SK认证,AK/SK认证是使用SDK对请求进行签名,签名过程会自动往请求中添加Authorization(签名认证信息)和X-Sdk-Date(请求发送的时间)请求头。
如何调用API 构造请求 认证鉴权 返回结果
https://{Endpoint}/v3/projects”,其中{Endpoint}为IAM的终端节点,可以从地区和终端节点获取。接口的认证鉴权请参见认证鉴权。 响应示例如下,其中projects下的“id”即为项目ID。 { "projects": [ {