%%%----------------------------------------------------------------------------- %%% %%% [ACL](https://github.com/emqtt/emqttd/wiki/ACL) %%% %%% -type who() :: all | binary() | %%% {ipaddr, esockd_access:cidr()} | %%% {client, binary()} | %%% {user, binary()}. %%% %%% -type access() :: subscribe | publish | pubsub. %%% %%% -type topic() :: binary(). %%% %%% -type rule() :: {allow, all} | %%% {allow, who(), access(), list(topic())} | %%% {deny, all} | %%% {deny, who(), access(), list(topic())}. %%% %%%----------------------------------------------------------------------------- {allow, {user, "dashboard"}, subscribe, ["$SYS/#"]}. {allow, {ipaddr, "127.0.0.1"}, pubsub, ["$SYS/#", "#"]}. {deny, all, subscribe, ["$SYS/#", {eq, "#"}]}. {allow, all}.