|
|
@@ -62,7 +62,7 @@ set_special_configs(emqx_authz) ->
|
|
|
{ok, _} = emqx:update_config([authorization, cache, enable], false),
|
|
|
{ok, _} = emqx:update_config([authorization, no_match], deny),
|
|
|
{ok, _} = emqx:update_config([authorization, sources],
|
|
|
- [#{<<"type">> => <<"built-in-database">>}]),
|
|
|
+ [#{<<"type">> => <<"built_in_database">>}]),
|
|
|
ok;
|
|
|
set_special_configs(_App) ->
|
|
|
ok.
|
|
|
@@ -74,12 +74,12 @@ set_special_configs(_App) ->
|
|
|
t_api(_) ->
|
|
|
{ok, 204, _} =
|
|
|
request( post
|
|
|
- , uri(["authorization", "sources", "built-in-database", "username"])
|
|
|
+ , uri(["authorization", "sources", "built_in_database", "username"])
|
|
|
, [?USERNAME_RULES_EXAMPLE]),
|
|
|
|
|
|
{ok, 200, Request1} =
|
|
|
request( get
|
|
|
- , uri(["authorization", "sources", "built-in-database", "username"])
|
|
|
+ , uri(["authorization", "sources", "built_in_database", "username"])
|
|
|
, []),
|
|
|
#{<<"data">> := [#{<<"username">> := <<"user1">>, <<"rules">> := Rules1}],
|
|
|
<<"meta">> := #{<<"count">> := 1,
|
|
|
@@ -91,7 +91,7 @@ t_api(_) ->
|
|
|
request( get
|
|
|
, uri([ "authorization"
|
|
|
, "sources"
|
|
|
- , "built-in-database"
|
|
|
+ , "built_in_database"
|
|
|
, "username?page=1&limit=20&like_username=noexist"])
|
|
|
, []),
|
|
|
#{<<"data">> := [],
|
|
|
@@ -102,47 +102,47 @@ t_api(_) ->
|
|
|
|
|
|
{ok, 200, Request2} =
|
|
|
request( get
|
|
|
- , uri(["authorization", "sources", "built-in-database", "username", "user1"])
|
|
|
+ , uri(["authorization", "sources", "built_in_database", "username", "user1"])
|
|
|
, []),
|
|
|
#{<<"username">> := <<"user1">>, <<"rules">> := Rules1} = jsx:decode(Request2),
|
|
|
|
|
|
|
|
|
{ok, 204, _} =
|
|
|
request( put
|
|
|
- , uri(["authorization", "sources", "built-in-database", "username", "user1"])
|
|
|
+ , uri(["authorization", "sources", "built_in_database", "username", "user1"])
|
|
|
, ?USERNAME_RULES_EXAMPLE#{rules => []}),
|
|
|
{ok, 200, Request3} =
|
|
|
request( get
|
|
|
- , uri(["authorization", "sources", "built-in-database", "username", "user1"])
|
|
|
+ , uri(["authorization", "sources", "built_in_database", "username", "user1"])
|
|
|
, []),
|
|
|
#{<<"username">> := <<"user1">>, <<"rules">> := Rules2} = jsx:decode(Request3),
|
|
|
?assertEqual(0, length(Rules2)),
|
|
|
|
|
|
{ok, 204, _} =
|
|
|
request( delete
|
|
|
- , uri(["authorization", "sources", "built-in-database", "username", "user1"])
|
|
|
+ , uri(["authorization", "sources", "built_in_database", "username", "user1"])
|
|
|
, []),
|
|
|
{ok, 404, _} =
|
|
|
request( get
|
|
|
- , uri(["authorization", "sources", "built-in-database", "username", "user1"])
|
|
|
+ , uri(["authorization", "sources", "built_in_database", "username", "user1"])
|
|
|
, []),
|
|
|
{ok, 404, _} =
|
|
|
request( delete
|
|
|
- , uri(["authorization", "sources", "built-in-database", "username", "user1"])
|
|
|
+ , uri(["authorization", "sources", "built_in_database", "username", "user1"])
|
|
|
, []),
|
|
|
|
|
|
|
|
|
{ok, 204, _} =
|
|
|
request( post
|
|
|
- , uri(["authorization", "sources", "built-in-database", "clientid"])
|
|
|
+ , uri(["authorization", "sources", "built_in_database", "clientid"])
|
|
|
, [?CLIENTID_RULES_EXAMPLE]),
|
|
|
{ok, 200, Request4} =
|
|
|
request( get
|
|
|
- , uri(["authorization", "sources", "built-in-database", "clientid"])
|
|
|
+ , uri(["authorization", "sources", "built_in_database", "clientid"])
|
|
|
, []),
|
|
|
{ok, 200, Request5} =
|
|
|
request( get
|
|
|
- , uri(["authorization", "sources", "built-in-database", "clientid", "client1"])
|
|
|
+ , uri(["authorization", "sources", "built_in_database", "clientid", "client1"])
|
|
|
, []),
|
|
|
#{<<"data">> := [#{<<"clientid">> := <<"client1">>, <<"rules">> := Rules3}],
|
|
|
<<"meta">> := #{<<"count">> := 1, <<"limit">> := 100, <<"page">> := 1}}
|
|
|
@@ -152,97 +152,97 @@ t_api(_) ->
|
|
|
|
|
|
{ok, 204, _} =
|
|
|
request( put
|
|
|
- , uri(["authorization", "sources", "built-in-database", "clientid", "client1"])
|
|
|
+ , uri(["authorization", "sources", "built_in_database", "clientid", "client1"])
|
|
|
, ?CLIENTID_RULES_EXAMPLE#{rules => []}),
|
|
|
{ok, 200, Request6} =
|
|
|
request( get
|
|
|
- , uri(["authorization", "sources", "built-in-database", "clientid", "client1"])
|
|
|
+ , uri(["authorization", "sources", "built_in_database", "clientid", "client1"])
|
|
|
, []),
|
|
|
#{<<"clientid">> := <<"client1">>, <<"rules">> := Rules4} = jsx:decode(Request6),
|
|
|
?assertEqual(0, length(Rules4)),
|
|
|
|
|
|
{ok, 204, _} =
|
|
|
request( delete
|
|
|
- , uri(["authorization", "sources", "built-in-database", "clientid", "client1"])
|
|
|
+ , uri(["authorization", "sources", "built_in_database", "clientid", "client1"])
|
|
|
, []),
|
|
|
{ok, 404, _} =
|
|
|
request( get
|
|
|
- , uri(["authorization", "sources", "built-in-database", "clientid", "client1"])
|
|
|
+ , uri(["authorization", "sources", "built_in_database", "clientid", "client1"])
|
|
|
, []),
|
|
|
{ok, 404, _} =
|
|
|
request( delete
|
|
|
- , uri(["authorization", "sources", "built-in-database", "clientid", "client1"])
|
|
|
+ , uri(["authorization", "sources", "built_in_database", "clientid", "client1"])
|
|
|
, []),
|
|
|
|
|
|
|
|
|
{ok, 204, _} =
|
|
|
request( post
|
|
|
- , uri(["authorization", "sources", "built-in-database", "all"])
|
|
|
+ , uri(["authorization", "sources", "built_in_database", "all"])
|
|
|
, ?ALL_RULES_EXAMPLE),
|
|
|
{ok, 200, Request7} =
|
|
|
request( get
|
|
|
- , uri(["authorization", "sources", "built-in-database", "all"])
|
|
|
+ , uri(["authorization", "sources", "built_in_database", "all"])
|
|
|
, []),
|
|
|
#{<<"rules">> := Rules5} = jsx:decode(Request7),
|
|
|
?assertEqual(3, length(Rules5)),
|
|
|
|
|
|
{ok, 204, _} =
|
|
|
request( post
|
|
|
- , uri(["authorization", "sources", "built-in-database", "all"])
|
|
|
+ , uri(["authorization", "sources", "built_in_database", "all"])
|
|
|
|
|
|
, ?ALL_RULES_EXAMPLE#{rules => []}),
|
|
|
{ok, 200, Request8} =
|
|
|
request( get
|
|
|
- , uri(["authorization", "sources", "built-in-database", "all"])
|
|
|
+ , uri(["authorization", "sources", "built_in_database", "all"])
|
|
|
, []),
|
|
|
#{<<"rules">> := Rules6} = jsx:decode(Request8),
|
|
|
?assertEqual(0, length(Rules6)),
|
|
|
|
|
|
{ok, 204, _} =
|
|
|
request( post
|
|
|
- , uri(["authorization", "sources", "built-in-database", "username"])
|
|
|
+ , uri(["authorization", "sources", "built_in_database", "username"])
|
|
|
, [ #{username => erlang:integer_to_binary(N), rules => []}
|
|
|
|| N <- lists:seq(1, 20) ]),
|
|
|
{ok, 200, Request9} =
|
|
|
request( get
|
|
|
- , uri(["authorization", "sources", "built-in-database", "username?page=2&limit=5"])
|
|
|
+ , uri(["authorization", "sources", "built_in_database", "username?page=2&limit=5"])
|
|
|
, []),
|
|
|
#{<<"data">> := Data1} = jsx:decode(Request9),
|
|
|
?assertEqual(5, length(Data1)),
|
|
|
|
|
|
{ok, 204, _} =
|
|
|
request( post
|
|
|
- , uri(["authorization", "sources", "built-in-database", "clientid"])
|
|
|
+ , uri(["authorization", "sources", "built_in_database", "clientid"])
|
|
|
, [ #{clientid => erlang:integer_to_binary(N), rules => []}
|
|
|
|| N <- lists:seq(1, 20) ]),
|
|
|
{ok, 200, Request10} =
|
|
|
request( get
|
|
|
- , uri(["authorization", "sources", "built-in-database", "clientid?limit=5"])
|
|
|
+ , uri(["authorization", "sources", "built_in_database", "clientid?limit=5"])
|
|
|
, []),
|
|
|
#{<<"data">> := Data2} = jsx:decode(Request10),
|
|
|
?assertEqual(5, length(Data2)),
|
|
|
|
|
|
{ok, 400, Msg1} =
|
|
|
request( delete
|
|
|
- , uri(["authorization", "sources", "built-in-database", "purge-all"])
|
|
|
+ , uri(["authorization", "sources", "built_in_database", "purge-all"])
|
|
|
, []),
|
|
|
?assertMatch({match, _}, re:run(Msg1, "must\sbe\sdisabled\sbefore")),
|
|
|
{ok, 204, _} =
|
|
|
request( put
|
|
|
- , uri(["authorization", "sources", "built-in-database"])
|
|
|
+ , uri(["authorization", "sources", "built_in_database"])
|
|
|
, #{<<"enable">> => true}),
|
|
|
%% test idempotence
|
|
|
{ok, 204, _} =
|
|
|
request( put
|
|
|
- , uri(["authorization", "sources", "built-in-database"])
|
|
|
+ , uri(["authorization", "sources", "built_in_database"])
|
|
|
, #{<<"enable">> => true}),
|
|
|
{ok, 204, _} =
|
|
|
request( put
|
|
|
- , uri(["authorization", "sources", "built-in-database"])
|
|
|
+ , uri(["authorization", "sources", "built_in_database"])
|
|
|
, #{<<"enable">> => false}),
|
|
|
{ok, 204, _} =
|
|
|
request( delete
|
|
|
- , uri(["authorization", "sources", "built-in-database", "purge-all"])
|
|
|
+ , uri(["authorization", "sources", "built_in_database", "purge-all"])
|
|
|
, []),
|
|
|
?assertEqual(0, emqx_authz_mnesia:record_count()),
|
|
|
ok.
|