Fix the check_subacl bug when enable_acl is set to false
This commit is contained in:
parent
41dcb4acf2
commit
c13e194838
|
@ -891,11 +891,11 @@ check_sub_acl(TopicFilters, #pstate{credentials = #{is_superuser := IsSuper}})
|
||||||
check_sub_acl(TopicFilters, #pstate{zone = Zone, credentials = Credentials}) ->
|
check_sub_acl(TopicFilters, #pstate{zone = Zone, credentials = Credentials}) ->
|
||||||
EnableAcl = emqx_zone:get_env(Zone, enable_acl, false),
|
EnableAcl = emqx_zone:get_env(Zone, enable_acl, false),
|
||||||
lists:foldr(
|
lists:foldr(
|
||||||
fun({Topic, SubOpts}, {Ok, Acc}) when EnableAcl ->
|
fun({Topic, SubOpts}, {ok, Acc}) when EnableAcl ->
|
||||||
AllowTerm = {Ok, [{Topic, SubOpts}|Acc]},
|
AllowTerm = {ok, [{Topic, SubOpts}|Acc]},
|
||||||
DenyTerm = {error, [{Topic, SubOpts#{rc := ?RC_NOT_AUTHORIZED}}|Acc]},
|
DenyTerm = {error, [{Topic, SubOpts#{rc := ?RC_NOT_AUTHORIZED}}|Acc]},
|
||||||
do_acl_check(subscribe, Credentials, Topic, AllowTerm, DenyTerm);
|
do_acl_check(subscribe, Credentials, Topic, AllowTerm, DenyTerm);
|
||||||
(TopicFilter, Acc) ->
|
(TopicFilter, {ok, Acc}) ->
|
||||||
{ok, [TopicFilter | Acc]}
|
{ok, [TopicFilter | Acc]}
|
||||||
end, {ok, []}, TopicFilters).
|
end, {ok, []}, TopicFilters).
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue