当kura在Kapua上发布到localhost:1883时,我收到了以下错误:
WARN o.e.k.b.c.p.KapuaSecurityBrokerFilter - 用户1:kapua-broker (kapua-broker - tcp://10.0.2.2:56178 - 未授权conn id 写信给:topic:// VirtualTopic.hahaha.kapua 1840321435420579455)-broker.DHT11Sensor.DHT11Data 13:26:43.493 [ActiveMQ NIO Worker 5]警告o.a.a.b.TransportConnection.Service - 连接时发生安全性错误:tcp://10.0.2.2:56178,User 1:kapua-broker(kapua-broker - tcp://10.0.2.2:56178 - conn id 1840321435420579455)无权写信给: 话题://VirtualTopic.hahaha.kapua-broker.DHT11Sensor.DHT11Data 13:26:43.493 [ActiveMQ NIO Worker 5]警告 o.a.a.t.mqtt.MQTTProtocolConverter - 无法发送MQTT发布: 13:26:48.495 [ActiveMQ NIO Worker 6]警告 o.e.k.b.c.p.KapuaSecurityBrokerFilter - 用户1:kapua-broker (kapua-broker - tcp://10.0.2.2:56178 - conn id 1840321435420579455)是 没有授权写
答案 0 :(得分:2)
据我所知,Kapua有一个ACL访问规则,用于定义谁可以在代理上发布/订阅/管理不同的主题/渠道。 如果您使用具有代理权限的用户连接到Kapua,那么您只能写入主题: 题目:// {VirtualTopic帐户名} {客户ID} 现在在你的情况下,这意味着你有帐户哈哈哈和客户与id kapua经纪人。是这样的吗?如果没有相应地设置主题。 比如这样的事情: 话题://VirtualTopic.kapua-sys.client-1.DHT11Sensor.DHT11Data 当你用kapua-broker用户连接时,将client-1指定为客户端ID。 Kapua-broker用户在kapua-sys帐户下(由于kapua-sys是als,这有点令人困惑) o用户)。 这对你有帮助吗?
答案 1 :(得分:0)
我无法评论@ uros-mesaric问题。它的答案是正确的。 下面只是澄清
在Kapua,您可以根据您的用户许可发布/订阅。
如果您的用户仅拥有broker:connect
权限,则您只能发布/订阅主题:
{account-name}/{connectionClientId}/{semanticTopic}
在您的特定情况下,您应该发布/订阅主题:
kapus-sys/1840321435420579455/DHT11Sensor/DHT11Data
kapua-sys
是用户kapua-broker所属的帐户名,
而1840321435420579455
是用于创建连接的clientId。
请注意,用于连接的用户名和帐户名是Kapua中的两个不同内容。一个帐户有多个用户。