检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 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证书管理 上传设备CA证书 获取设备CA证书列表 删除设备CA证书 查询单个设备CA证书 更新单个设备CA证书 生成CA证书验证码/验证设备CA证书 父主题: API
证书策略,即通过平台认证设备的设备CA证书匹配的发放策略。每条证书策略实例指:匹配上该策略实例的设备,将会被发放到该策略实例关联的设备接入实例的对应资源空间(即应用)下。 设备匹配证书策略实例的机制为: 设备的发放策略指定为“证书策略”时,其认证方式也必须为X.509证书认证且同时指定了
数据在传输过程被篡改造成安全风险。 X.509是一种用于通信实体鉴别的数字证书,物联网平台支持设备使用自己的X.509证书进行认证鉴权。使用X.509认证技术时,设备无法被仿冒,避免了密钥被泄露的风险。 设备CA证书管理 本章节介绍设备CA证书的制作,以及如何在物联网平台上传、验证和管理设备CA证书。
位。 在业务中的用途 在证书认证方式中,平台存储设备CA证书,不存储设备证书完整内容,但会存储、计算和校验设备证书指纹。 为确保设备与平台通信的安全性,在双向认证过程中,平台不仅使用设备CA对设备证书进行验证,还会校验【设备关联的证书指纹】与【双向认证使用的设备证书的指纹】的一致性。
签发设备证书 已上传并验证CA证书后,就可以使用此CA证书签发设备证书供设备使用。 操作步骤 使用OpenSSL工具为设备证书生成密钥对,即”设备证书(客户端证书)私钥”。 openssl genrsa -out deviceCert.key 2048 使用密钥对生成证书签名请求文件:
生成CA证书验证码/验证设备CA证书 功能介绍 应用服务器可调用此接口在物联网平台生成CA证书验证码或验证设备的CA证书 URI POST /v5/iotps/{project_id}/certificates/{certificate_id}/action 表1 路径参数 参数
制作CA证书 本文以Windows环境为例,介绍通过Openssl工具制作CA证书和验证证书的方法。 以下“生成密钥对(rootCA.key)”和“生成CA证书(rootCA.crt)”为操作过程中需要使用到的两个文件。 制作CA证书 在浏览器中访问这里,下载并进行安装OpenSSL工具,安装完成后配置环境变量。
删除CA证书 登录设备发放控制台。 在设备发放控制台,左侧导航窗格中,选择“证书”,单击“证书列表”条目的操作栏中的“删除”。 图1 删除CA证书 关联了至少一个设备、策略或注册组的CA证书,不允许删除。 请谨慎操作,删除后的CA证书的所有数据将被删除且不可恢复。 父主题: 证书
更新CA证书 登录设备发放控制台。 在设备发放控制台,左侧导航窗格中,选择“证书”,单击“证书列表”条目的操作栏中的“更新”。 图1 更新CA证书 更新CA证书前,要求该证书未被设备、策略、注册组关联。 更新CA证书后,该证书状态将变为未验证,请重新完成验证CA证书过程。 父主题:
验证CA证书 对于已上传的CA证书,平台要求用户完成“验证CA证书”过程,以验证用户具备该CA证书的签发能力。 操作步骤 登录设备发放控制台。 在设备发放控制台,左侧导航窗格中,选择“证书”,单击“证书列表”条目的操作栏中的“验证证书”。 图1 上传CA证书完成页 在上传验证证书
上传CA证书 操作步骤 登录设备发放控制台。 在设备发放控制台,左侧导航窗格中,选择“证书”,单击右上方的“上传CA证书”。 图1 上传CA证书 在“上传CA证书”页面,填写“证书名称”,单击“添加文件”,上传此前“制作CA证书”步骤中生成的“CA证书(rootCA.crt文件)”,单击“确定”。
上传设备CA证书 功能介绍 应用服务器可调用此接口在物联网平台上传设备的CA证书 URI POST /v5/iotps/{project_id}/certificates 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID。 最小长度:1
删除设备CA证书 功能介绍 应用服务器可调用此接口在物联网平台删除设备的CA证书 URI DELETE /v5/iotps/{project_id}/certificates/{certificate_id} 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是