chore(emqx_authz api): change rules type from list to string in http api
This commit is contained in:
parent
94c51f9253
commit
75b77b77b6
|
@ -484,7 +484,7 @@ definitions() ->
|
||||||
type => array,
|
type => array,
|
||||||
items => #{
|
items => #{
|
||||||
type => string,
|
type => string,
|
||||||
example => <<"{allow,{username,\"^dashboard?\"},subscribe,[\"$SYS/#\"]}.">>
|
example => <<"{allow,{username,\"^dashboard?\"},subscribe,[\"$SYS/#\"]}.\n{allow,{ipaddr,\"127.0.0.1\"},all,[\"$SYS/#\",\"#\"]}.">>
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
path => #{
|
path => #{
|
||||||
|
|
|
@ -32,9 +32,8 @@
|
||||||
-define(EXAMPLE_FILE,
|
-define(EXAMPLE_FILE,
|
||||||
#{type=> file,
|
#{type=> file,
|
||||||
enable => true,
|
enable => true,
|
||||||
rules => [<<"{allow,{username,\"^dashboard?\"},subscribe,[\"$SYS/#\"]}.">>,
|
rules => <<"{allow,{username,\"^dashboard?\"},subscribe,[\"$SYS/#\"]}.\n{allow,{ipaddr,\"127.0.0.1\"},all,[\"$SYS/#\",\"#\"]}.">>
|
||||||
<<"{allow,{ipaddr,\"127.0.0.1\"},all,[\"$SYS/#\",\"#\"]}.">>
|
}).
|
||||||
]}).
|
|
||||||
|
|
||||||
-define(EXAMPLE_RETURNED_REDIS,
|
-define(EXAMPLE_RETURNED_REDIS,
|
||||||
maps:put(annotations, #{status => healthy}, ?EXAMPLE_REDIS)
|
maps:put(annotations, #{status => healthy}, ?EXAMPLE_REDIS)
|
||||||
|
@ -350,9 +349,7 @@ sources(put, #{body := Body}) when is_list(Body) ->
|
||||||
NBody = [ begin
|
NBody = [ begin
|
||||||
case Source of
|
case Source of
|
||||||
#{<<"type">> := <<"file">>, <<"rules">> := Rules, <<"enable">> := Enable} ->
|
#{<<"type">> := <<"file">>, <<"rules">> := Rules, <<"enable">> := Enable} ->
|
||||||
{ok, Filename} = write_file(filename:join([emqx:get_config([node, data_dir]), "acl.conf"]),
|
{ok, Filename} = write_file(filename:join([emqx:get_config([node, data_dir]), "acl.conf"]), Rules),
|
||||||
erlang:list_to_bitstring([<<Rule/binary, "\n">> || Rule <- Rules])
|
|
||||||
),
|
|
||||||
#{type => file, enable => Enable, path => Filename};
|
#{type => file, enable => Enable, path => Filename};
|
||||||
_ -> write_cert(Source)
|
_ -> write_cert(Source)
|
||||||
end
|
end
|
||||||
|
@ -396,9 +393,7 @@ source(get, #{bindings := #{type := Type}}) ->
|
||||||
{200, read_cert(NSource2)}
|
{200, read_cert(NSource2)}
|
||||||
end;
|
end;
|
||||||
source(put, #{bindings := #{type := <<"file">>}, body := #{<<"type">> := <<"file">>, <<"rules">> := Rules, <<"enable">> := Enable}}) ->
|
source(put, #{bindings := #{type := <<"file">>}, body := #{<<"type">> := <<"file">>, <<"rules">> := Rules, <<"enable">> := Enable}}) ->
|
||||||
{ok, Filename} = write_file(maps:get(path, emqx_authz:lookup(file), ""),
|
{ok, Filename} = write_file(maps:get(path, emqx_authz:lookup(file), ""), Rules),
|
||||||
erlang:list_to_bitstring([<<Rule/binary, "\n">> || Rule <- Rules])
|
|
||||||
),
|
|
||||||
case emqx_authz:update({replace_once, file}, #{type => file, enable => Enable, path => Filename}) of
|
case emqx_authz:update({replace_once, file}, #{type => file, enable => Enable, path => Filename}) of
|
||||||
{ok, _} -> {204};
|
{ok, _} -> {204};
|
||||||
{error, Reason} ->
|
{error, Reason} ->
|
||||||
|
|
|
@ -92,10 +92,7 @@
|
||||||
}).
|
}).
|
||||||
-define(SOURCE6, #{<<"type">> => <<"file">>,
|
-define(SOURCE6, #{<<"type">> => <<"file">>,
|
||||||
<<"enable">> => true,
|
<<"enable">> => true,
|
||||||
<<"rules">> =>
|
<<"rules">> => <<"{allow,{username,\"^dashboard?\"},subscribe,[\"$SYS/#\"]}.\n{allow,{ipaddr,\"127.0.0.1\"},all,[\"$SYS/#\",\"#\"]}.">>
|
||||||
[<<"{allow,{username,\"^dashboard?\"},subscribe,[\"$SYS/#\"]}.">>,
|
|
||||||
<<"{allow,{ipaddr,\"127.0.0.1\"},all,[\"$SYS/#\",\"#\"]}.">>
|
|
||||||
]
|
|
||||||
}).
|
}).
|
||||||
|
|
||||||
all() ->
|
all() ->
|
||||||
|
|
Loading…
Reference in New Issue