当kura在Kapua上发布到localhost:1883时,我得到了以下错误:
WARN o.e.k.b.c.p.KapuaSecurityBrokerFilter - User 1:kapua-broker (kapua-broker - tcp://10.0.2.2:56178 - conn id无权写入:topic://VirtualTopic.haha.kapua 1840321435420579455)-broker.DHT11Sensor.DHT11Data 13:26:43.493 ActiveMQ NIO Worker 5 WARN o.a.a.b.TransportConnection.Service -连接时出现安全错误: tcp://10.0.2.2:56178,用户1:kapua-broker (kapua-broker - tcp://10.0.2.2:56178 - conn id 1840321435420579455)无权写入: topic://VirtualTopic.hahaha.kapua-broker.DHT11Sensor.DHT11Data 13:26:43.493 ActiveMQ NIO Worker 5 WARN o.a.a.t.mqtt.MQTTProtocolConverter -无法发送MQTT发布: 13:26:48.495 ActiveMQ NIO Worker 6 WARN o.e.k.b.c.p.KapuaSecurityBrokerFilter - User 1:kapua-broker(kapua-broker - tcp://10.0.2.2:56178 - conn id 1840321435420579455)无权写入
发布于 2017-07-25 14:58:13
据我所知,Kapua有一个ACL访问规则,定义了谁可以在broker上发布/订阅/管理不同的主题/频道。如果您使用具有broker权限的用户连接到Kapua,那么您可以仅写入topic: topic://VirtualTopic.{account-name}.{client-id} now,这将意味着您拥有帐户哈哈哈和具有id kapua-broker的客户端。真的是这样吗?如果没有,请相应地设置主题。例如,如下所示: topic://VirtualTopic.kapua-sys.client-1.DHT11Sensor.DHT11Data,当您使用kapua-broker user连接时,指定client-1作为客户端id。Kapua-broker用户在kapua-sys帐户下(这有点令人困惑,因为kapua-sys也是一个用户)。这对你有帮助吗?
发布于 2017-07-25 15:39:49
我无法评论@uros-mesaric问题。它的答案是正确的。下面只是一个澄清
在Kapua中,您可以根据自己的用户权限进行发布/订阅。
如果您的用户只有broker:connect
权限,则只能在topic上发布/订阅:
{account-name}/{connectionClientId}/{semanticTopic}
在您的特定情况下,您应该在topic上发布/订阅:
kapus-sys/1840321435420579455/DHT11Sensor/DHT11Data
kapua-sys
是用户kapua-broker所属的帐户名,而1840321435420579455
是用于创建连接的clientId。
请注意,用于连接的用户名和帐户名在Kapua中是两个不同的东西。一个账号有多个用户。
https://stackoverflow.com/questions/45233302
复制相似问题