DEBUG: mysite:34
{acl_mqtt,direct,<<"site/mysite/flight">>,[<<"site">>,<<"mysite">>,<<"flight">>],<<"mysite">>,<<"uRBtcIBLWCKpWoslTfiR">>}
I see it in the console, what does it mean?
четверг, 1 декабря 2016 г., 1:36:51 UTC+9 пользователь Marc Worrell написал:
>
> Just to be sure, it is a
modul called without mod_,does it matter?
четверг, 1 декабря 2016 г., 1:36:51 UTC+9 пользователь Marc Worrell написал:
>
> Just to be sure, it is a module as in “mod_something.erl” ?
> And other observers in that module are called?
>
> - Marc
>
>
>
> On 30 Nov 2016, at 17:30, heiheshang
Just to be sure, it is a module as in “mod_something.erl” ?
And other observers in that module are called?
- Marc
> On 30 Nov 2016, at 17:30, heiheshang wrote:
>
> subscription works only in one module, other modules in the code is not
> running. The priority
> On 30 Nov 2016, at 16:52, heiheshang wrote:
>
> observe_acl_is_allowed(#acl_is_allowed{action=publish,
> object=#acl_mqtt{words=[<<"~site">>,<<"flight">>| _Rest]}}, Context)
> ->
> true;
> observe_acl_is_allowed(#acl_is_allowed{action=subscribe,
>
observe_acl_is_allowed(#acl_is_allowed{action=publish,
object=#acl_mqtt{words=[<<"~site">>,<<"flight">>| _Rest]}},
Context) ->
true;
observe_acl_is_allowed(#acl_is_allowed{action=subscribe,
object=#acl_mqtt{words=[<<"~site">>,<<"flight">>| _Rest]}},
Context) ->
true;
> On 30 Nov 2016, at 16:10, heiheshang wrote:
>
> yet this only works for the administrator, all other users do not receive
> messages
Probably due to the <<“~site”>> in your pattern.
Administrators have a shortcut in all ACL checks, so that they can do anything
Check the “words” that pass here, shorthands like “~site” will already be
expanded here.
In your case you can match on: [<<“site”>>, _Site, <<“flight”>> | _]
But returning true here will indeed allow any user to publish or subscribe to
these topics.
- Marc
> On 30 Nov 2016, at 15:30,
Quick reply, as I am away from my keyboard.
MQTT messages are ACL checked by topic. You can check mod_mqtt for an example
observer.
If you just want to publish from Erlang, then you can use z_acl:sudo/1 on the
Context. This switches off ACL checks.
- Marc
Sent from my iPhone
> On 26 Nov