检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
日志显示,已调用了发放设备接口,函数主要逻辑正确。至此,您已完成自定义策略函数的编写,可进行后续步骤。 后续操作 完成自定义策略函数的编写后,创建关联该函数的自定义策略实例以及设备或注册组,通过设备南向操作触发函数,将设备发放到指定目的接入点(设备接入实例)。 后续操作包括: 添加自定义策略实例; 注册设备或创建注册组;
添加自定义策略实例 进入“策略”界面,单击展开“自定义策略”,单击“添加函数”。 图1 添加自定义策略 按照下方参数说明填写关键参数信息后,单击“确定”。 参数名称 说明 示例 函数 即在函数服务中实现的自定义策略。如果下拉框没有你想要的函数,可以单击创建新函数来实现你的自定义策略需求。
自定义策略 与静态策略和证书策略相比,自定义策略为您提供更灵活的策略机制。自定义策略实例指示函数关联的设备接入实例,一个函数可关联多个设备接入实例。 设备匹配自定义策略实例的机制为: 设备的发放策略指定为“函数策略”时,需同时指定其关联的函数,设备与自定义策略实例关联同一个函数时,即被认为该设备匹配上该条策略实例;
图1 证书列表 进入“策略”界面,添加自定义策略。 如何添加自定义策略实例参见添加自定义策略实例。 图2 添加自定义策略 进入“设备”界面,单击左上角“注册设备”,进行注册设备。 如何注册设备,参见设备 。 图3 注册设备 图4 创建证书模式自定义策略设备 设备触发放流程 配置连接参数。
是否必选 参数类型 描述 project_id 是 String 项目ID。 最小长度:1 最大长度:32 strategy_type 是 String 策略类型。支持静态策略(base)、证书策略(certificates)、自定义策略(functions)多种策略类型。 缺省值:base
“-days”后的参数值指定了该证书的有效天数,此处示例为36500天,您可根据实际业务场景和需要进行调整。 添加自定义策略 添加自定义策略。 图5 添加自定义策略 创建注册组 图6 新增注册组 图7 创建证书自定义注册组 连接鉴权 MQTT.fx 是目前主流的MQTT桌面客户端,它支持 Windows,
NO BEAR TYPE AUTHORIZATION HEADER 无头部凭证类型 请确认凭证是否有效 400 IoTDP.100110 WRONG TOKEN TYPE. 凭证类型错误 请确认凭证类型是否正确 400 IoTDP.100121 length of userId must
请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 表3 请求Body参数 参数 是否必选 参数类型 描述 authorizing_domain_id
是否必选 参数类型 描述 project_id 是 String 项目ID。 最小长度:1 最大长度:32 strategy_type 是 String 策略类型。支持静态策略(base)、证书策略(certificates)、自定义策略(functions)多种策略类型。 缺省值:base
表2 示例列表 注册/注册组 认证类型 策略类型 示例 注册 证书认证 证书策略 MQTT X.509证书认证设备使用证书策略发放示例 注册 密钥认证 静态策略 MQTT 密钥设备使用静态策略发放示例 注册组 证书认证 自定义策略 MQTT 注册组自定义策略发放示例 注册组 云证书认证
cert_type String 证书类型 strategy_type String 策略类型。目前支持静态策略(base),证书策略(certificates)和自定义策略(functions)。 缺省值:functions function_name String 自定义函数名称。 最小长度:1
是否必选 参数类型 描述 project_id 是 String 项目ID。 最小长度:1 最大长度:32 strategy_type 是 String 策略类型。支持静态策略(base)、证书策略(certificates)、自定义策略(functions)多种策略类型。 缺省值:base
是否必选 参数类型 描述 project_id 是 String 项目ID。 最小长度:1 最大长度:32 strategy_type 是 String 策略类型。支持静态策略(base)、证书策略(certificates)、自定义策略(functions)多种策略类型。 缺省值:base
修改设备发放信息结构体。 表4 ProvisionInfo 参数 是否必选 参数类型 描述 allocation_strategy_type 是 String 策略类型。目前支持静态策略(base),证书策略(certificates)和自定义策略(functions) 缺省值:functions certificate_id
相关服务 位置 创建设备时,需要使用设备接入服务创建的产品 设备接入服务(IoT Device Access,IoTDA) 创建产品 创建自定义策略时需要使用函数 函数工作流服务(FunctionGraph) 创建并初始化函数 创建证书策略使用云证书时,需要去云证书管理服务创建云证书
RegistrationGroupInfoDTO 参数 参数类型 描述 certificate_id String CA证书id 最小长度:0 最大长度:256 cert_type String 证书类型 strategy_type String 策略类型。目前支持静态策略(base),证书策略(
消息接收方 设备 参数说明 表2 下发参数说明 参数 必选/可选 类型 描述 address 必选 String 对应设备接入实例的接入地址。 initConfig 必选 String 客户在创建设备,或者创建注册组时自定义的初始化Json字符串。 示例 设备先订阅Topic后才能收到命令推送,设备接收到的payload:
表4 AddProvisionInfo 参数 是否必选 参数类型 描述 allocation_strategy_type 是 String 策略类型。目前支持静态策略(base),证书策略(certificates)和自定义策略(functions) 缺省值:functions certificate_id
ProvisionInfoReq 参数 是否必选 参数类型 描述 allocation_strategy_type 否 String 策略类型。 取值如下: base:静态策略; certificates:证书策略; functions:自定义策略; nearby:就近策略。 缺省值:base
使用限制 设备发放服务具有以下使用限制。 表1 设备发放服务使用限制列表 对象 类别/描述 限制 设备 集成Agent Lite的设备(MQTT) 不支持 原生MQTT协议设备 支持,设备需要开发设备引导接口,具备设备发放能力。 集成LiteOS的设备(LwM2M) 支持 证书