【MQTT 开发入门到调优】EMQ X 高级功能使用(1)发布订阅ACL、EMQ X 中的钩子事件WebHook
学习目标:
- 目标1:发布订阅ACL的作用,具体规则,授权结果,如何进行全局配置
- 目标2:超级用户有什么特权,ACL缓存和ACL链
- 目标3:HTTP ACL的授权原理,完成HTTP ACL的案例
- 目标4:EMQ X Webhook的作用,完成利用Webhook实现客户端断连监控的案例
1.发布订阅ACL
1.1 发布订阅ACL简介
发布订阅ACL是指对发布(publish)/订阅(subscribe)操作的权限控制。例如拒绝用户 emq-demo 向 testTopic/a 主题发布消息。 EMQ X 支持通过客户端发布订阅 ACL 进行客户端权限的管理。
1.1.1 ACL 插件
EMQ X 支持使用配置文件、外部主流数据库和自定义 HTTP API 作为 ACL 数据源。
连接数据源、进行访问控制功能是通过插件实现的,使用前需要启用相应的插件。
客户端订阅主题、发布消息时插件通过检查目标主题(Topic)是否在指定数据源允许/禁止列表内来实现对客 户端的发布、订阅权限管理。
配置文件
- 内置 ACL
使用配置文件提供认证数据源,适用于变动较小的 ACL 管理。
外部数据库