我有一个MQTT代理,设备连接到它并将数据发布到代理,我有一个nodejs程序,帮助客户订阅主题,并接收他们通过设备发布的数据。现在,我的用例是为每个客户端提供一个唯一的令牌,在连接MQTT代理时必须发送该令牌,以便开始发布数据。我希望使用API验证客户端令牌,然后在客户端和MQTT Broker之间建立连接。我已经搜索了我的用例,但我没有找到任何帮助。
vjrehmav1#
Mosquitto有一个授权插件API,可以让你建立你的身份验证方案。API文档为here您还可以在GitHub上搜索现有的认证插件,例如https://github.com/jpmens/mosquitto-auth-plug(此插件已不再开发,但有活动的分叉)
c7rzv4ha2#
如果你愿意给予使用Mosquitto,你可以使用aedes node.js库,它可以让你轻松地设置一个mqtt代理。在这里,你可以使用handler.authenticate、handler.authorizePublish和handler.authorizeSubscribe来实现任何你想要的认证逻辑。不需要依赖插件。
handler.authenticate
handler.authorizePublish
handler.authorizeSubscribe
2条答案
按热度按时间vjrehmav1#
Mosquitto有一个授权插件API,可以让你建立你的身份验证方案。
API文档为here
您还可以在GitHub上搜索现有的认证插件,例如https://github.com/jpmens/mosquitto-auth-plug(此插件已不再开发,但有活动的分叉)
c7rzv4ha2#
如果你愿意给予使用Mosquitto,你可以使用aedes node.js库,它可以让你轻松地设置一个mqtt代理。
在这里,你可以使用
handler.authenticate
、handler.authorizePublish
和handler.authorizeSubscribe
来实现任何你想要的认证逻辑。不需要依赖插件。