在MQTT中是否有获取连接的客户端输入的用户名和密码的提示?尤其是莫斯基托

在MQTT中是否有获取连接的客户端输入的用户名和密码的提示?尤其是莫斯基托,mqtt,iot,mosquitto,Mqtt,Iot,Mosquitto,我是mqtt中的新手,我尝试创建一些仅通过发布者和订阅者的用户名密码进行身份验证的内容(因此允许匿名的mqtt配置为true)。如果两者(发布者和订阅者)具有相同的用户名和密码,则数据表单发布者将被发送到订阅者。通过这样做,我们不需要在mqtt代理中设置新的用户名密码 所以,我需要一些东西来帮助我获得发布者和订阅者输入的用户名和密码。 我正在使用linux和go语言。对这些情况的帮助将非常有用。感谢Mosquitto有一个身份验证插件,可用于对客户端进行身份验证和授权。您可以使用它来检查用户的用

我是mqtt中的新手,我尝试创建一些仅通过发布者和订阅者的用户名密码进行身份验证的内容(因此允许匿名的mqtt配置为true)。如果两者(发布者和订阅者)具有相同的用户名和密码,则数据表单发布者将被发送到订阅者。通过这样做,我们不需要在mqtt代理中设置新的用户名密码

所以,我需要一些东西来帮助我获得发布者和订阅者输入的用户名和密码。
我正在使用linux和go语言。对这些情况的帮助将非常有用。感谢

Mosquitto有一个身份验证插件,可用于对客户端进行身份验证和授权。您可以使用它来检查用户的用户名/密码,还可以存储控制用户和发布/订阅哪些主题的ACL

也就是说,正常的MQTT身份验证机制通过控制对主题的访问来工作。给定的用户可以具有对主题(或主题模式)的读(订阅者)、写(发布者)或两者的访问权限

这意味着ACL在订阅或发布时应用,而不是在确定是否应将消息传递给特定客户端时应用

您可以通过在任何给定主题前面加上用户名来实现您想要的功能,例如

用户foo总是在
foo/…
上发布消息,并且可以订阅
foo/#

mosquitto ACL方案内置了将用户名替换为主题模式的支持,因此您可以执行以下操作:

pattern readwrite %u/# 

你好,不清楚你在问什么。Mosquitto是MQTT协议的C实现,它与Go之间的关系也不清楚。我建议看一看,并相应地修改你的问题,以便我们能更好地理解它。哦,哇。。那个插件可能是我真正需要的,我看到了“mosquitto_auth_unpwd_check”函数,也许我可以编辑它来获得用户名和密码的值。但是,你能解释一下如何使用这个插件吗?比如我需要先安装一些东西吗?那么我应该把代码放在哪里,如何运行这些代码呢?不管怎样,谢谢你的回答,如果你搜索有示例插件在那里