MQTT,发布者是否可以在主题上定义允许的订阅者?

问题描述 投票:0回答:1

我有一个基本的MQTT问题:如果我有一个不能配置自己但只能匿名发布或订阅的代理,发布者是否可以在该主题上定义允许的客户?

例如使用mosquitto可以定义ACL文件,但只能在代理站点上定义。

如果不可能,用python加密已发布数据的最佳方法是什么?

python security mqtt
1个回答
0
投票

不,MQTT发布者绝对不了解或控制哪些客户端可以订阅它发布消息的主题。

MQTT是一种发布/订阅协议,其主要宗旨之一是使发布者与订阅者完全脱钩。发布消息时,订阅者的数量可以为0到n个订阅者。

唯一的控制选项如@GDagger的注释中所述,您可以对有效负载进行加密,因此只有授权的订户才能对其进行解密。由于MQTT有效载荷只是字节的集合,因此您可以发送所需的任何内容(大小限制为256mb)

另一方面,代理具有完全控制权,它可以使用ACL来决定哪些客户端可以发布或订阅哪些主题。

© www.soinside.com 2019 - 2024. All rights reserved.