为用户/主题配置和管理提供用户界面和 REST API 的 MQTT 代理

物联网 MQTT
2021-06-10 13:58:08

蚊子MQTT

mosquitto以下人员合作时的一些已知事实

  • mosquitto 是一个基于命令行界面的代理。
  • 可以使用mosquitto.conf文件配置代理
  • 可以通过密码文件和mosquitto_passwdCLI 进行用户管理
  • 每次更改都需要重新启动 Broker(使用systemdsystem),或者需要重新启动docker容器,或者SIGUP在 Mosquitto 进程上使用

退税

  • 如果 Broker 部署在云基础设施上,管理员必须每次更新 Broker 并导致停机(尽管时间间隔很小)
  • 如果为mosquitto代理开发了用户界面,则需要 UI 访问 shell 访问权限,这可能需要root访问权限以执行代理重启或调用kill -SIGHUP $pid_mosquitto命令以及其他 CLI(取决于代理的安装方式)

要求

  • 是否有代理可以让用户通过 RESTful API 或 UI 管理代理的主题 + 用户管理平面?
  • 这很关键,因为通过此类接口处理代理可能更容易,但mosquitto不幸的是,这些接口不提供
1个回答

正如@Aurora001 在评论中指出的,解决方案是使用 mosquitto-auth-plugin(或使用 mosquitto 插件 API 编写您自己的插件)。虽然原始插件已存档,但正在处理活动的分叉。

扩展现有的 mosquitto docker 容器来构建插件并不难。

许多不同的经纪人为身份验证/授权系统提供数据库后端,您可以选择如何更新数据库。