EMQX V5 使用API 密钥将客户端踢下线

在我们选用开源的EMQX作为mqtt broker,我们可能会考虑先让客户端连接mqtt broker成功,再去校验客户端的有效性,当该客户端认证失败,再将其踢下线。例如:物联网设备连接云平台时,我们会将PK、PS提前烧录到设备中,用于连接mqtt broker的连接,而把DK、DS 放入payload中,当检测DK、DS不合法时,就会将该设备踢下线。本文简单介绍了,服务端(mqtt客户端)如何客户端(其它客户端)踢下线。

EMQX REST API swagger文档

http://localhost:18083/api-docs/index.html

两个接口可以将客户端踢下线

1. 批量踢下线接口

/api/v5/clients/kickout/bulk

2. 单个踢下线接口

/api/v5/clients/{clientId}

在这里插入图片描述

过程演示

1. 创建API秘钥

在侧边栏找到API秘钥菜单,点击该菜单,进入到API 密钥管理页面,点击创建按钮,输入秘钥名称,点击确定,即成功创建了API秘钥,复制Api Key和Secret Key,自己保存下来(只有第一次可见)。
在这里插入图片描述

2. 客户端连接

如下图,客户端上线
在这里插入图片描述

3. 调用接口将客户端踢下线(/api/v5/clients/{clientId})

在这里插入图片描述
注意:响应码204,表示踢下线成功
在这里插入图片描述如下图,调用接口后已将该客户端踢下线:
在这里插入图片描述

4. 接口的令牌是如何生成?

本文的Api秘钥数据如下所示:

ApiKey:a972505196446799
SecretKey:mn9AhnqtVDpSoloAJ29CThsl9AimB5TYpBJrxoZ9AsT8atH
${ApiKey}:${SecretKey} Base64编码后,在开头补充Basic + 一个空格
Authorization: Basic YTk3MjUwNTE5NjQ0Njc5OTptbjlBaG5xdFZEcFNvbG9BSjI5Q1Roc2w5QWltQjVUWXBCSnJ4b1o5QXNUOGF0SA==

EMQX文档:https://docs.emqx.com/en/emqx/v5.0/admin/api.html#java

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值