禁止某个用户订阅含有通配符的topic吗?

描述你需要的功能

能通过acl配置文件实现 禁止某个用户订阅含有通配符的topic吗?

为什么你需要这个功能

防止某些用户一次性订阅太多的topic

是可以的,你看一下 etc/acl.conf 文件。

就是默认的配置文件,没有改动过。emqx 5.0.21

{allow, {username, "^dashboard?"}, subscribe, ["$SYS/#"]}.

{allow, {ipaddr, "127.0.0.1"}, all, ["$SYS/#", "#"]}.

{deny, all, subscribe, ["$SYS/#", {eq, "#"}]}.

{allow, all}.

{deny, {username,"test01"},subscribe,["\+\#\*"]}.

我回复的最后一行 是我自己加的,没有生效的。其他就是配置文件自带的

{deny, {username,"test01"},subscribe,["\+\#\*"]}.

{deny, {username,“test01”},subscribe,[“/+/#”]}.

没有成功,仍然能够订阅成功。