diff --git a/apps/emqx_authn/i18n/emqx_authn_api_i18n.conf b/apps/emqx_authn/i18n/emqx_authn_api_i18n.conf index 777a1df00..3b8093e63 100644 --- a/apps/emqx_authn/i18n/emqx_authn_api_i18n.conf +++ b/apps/emqx_authn/i18n/emqx_authn_api_i18n.conf @@ -204,25 +204,14 @@ emqx_authn_api { } } - like_username { + like_user_id { desc { - en: """Fuzzy search username.""" - zh: """使用用户名模糊查询。""" + en: """Fuzzy search user_id (username or clientid).""" + zh: """使用用户 ID (username 或 clientid)模糊查询。""" } label { - en: """like_username""" - zh: """模糊用户名""" - } - } - - like_clientid { - desc { - en: """Fuzzy search clientid.""" - zh: """使用客户端标识符模糊查询。""" - } - label { - en: """like_clientid""" - zh: """模糊用户名""" + en: """like_user_id""" + zh: """like_user_id""" } } diff --git a/apps/emqx_authn/src/emqx_authn_api.erl b/apps/emqx_authn/src/emqx_authn_api.erl index fa79e0d0f..1f08cf1f2 100644 --- a/apps/emqx_authn/src/emqx_authn_api.erl +++ b/apps/emqx_authn/src/emqx_authn_api.erl @@ -429,16 +429,10 @@ schema("/authentication/:id/users") -> param_auth_id(), ref(emqx_dashboard_swagger, page), ref(emqx_dashboard_swagger, limit), - {like_username, + {like_user_id, mk(binary(), #{ in => query, - desc => ?DESC(like_username), - required => false - })}, - {like_clientid, - mk(binary(), #{ - in => query, - desc => ?DESC(like_clientid), + desc => ?DESC(like_user_id), required => false })}, {is_superuser, diff --git a/apps/emqx_authn/src/simple_authn/emqx_authn_mnesia.erl b/apps/emqx_authn/src/simple_authn/emqx_authn_mnesia.erl index 8af4cdd8c..bdcca33f8 100644 --- a/apps/emqx_authn/src/simple_authn/emqx_authn_mnesia.erl +++ b/apps/emqx_authn/src/simple_authn/emqx_authn_mnesia.erl @@ -69,8 +69,7 @@ -define(TAB, ?MODULE). -define(AUTHN_QSCHEMA, [ - {<<"like_username">>, binary}, - {<<"like_clientid">>, binary}, + {<<"like_user_id">>, binary}, {<<"user_group">>, binary}, {<<"is_superuser">>, atom} ]). @@ -319,14 +318,9 @@ run_fuzzy_filter(_, []) -> true; run_fuzzy_filter( E = #user_info{user_id = {_, UserID}}, - [{username, like, UsernameSubStr} | Fuzzy] + [{user_id, like, UsernameSubStr} | Fuzzy] ) -> - binary:match(UserID, UsernameSubStr) /= nomatch andalso run_fuzzy_filter(E, Fuzzy); -run_fuzzy_filter( - E = #user_info{user_id = {_, UserID}}, - [{clientid, like, ClientIDSubStr} | Fuzzy] -) -> - binary:match(UserID, ClientIDSubStr) /= nomatch andalso run_fuzzy_filter(E, Fuzzy). + binary:match(UserID, UsernameSubStr) /= nomatch andalso run_fuzzy_filter(E, Fuzzy). %%------------------------------------------------------------------------------ %% Internal functions diff --git a/apps/emqx_authn/test/emqx_authn_mnesia_SUITE.erl b/apps/emqx_authn/test/emqx_authn_mnesia_SUITE.erl index 4d26b8878..693bb9eba 100644 --- a/apps/emqx_authn/test/emqx_authn_mnesia_SUITE.erl +++ b/apps/emqx_authn/test/emqx_authn_mnesia_SUITE.erl @@ -218,7 +218,7 @@ t_list_users(_) -> #{ <<"page">> => 1, <<"limit">> => 20, - <<"like_username">> => <<"3">> + <<"like_user_id">> => <<"3">> }, State ). diff --git a/apps/emqx_gateway/i18n/emqx_gateway_api_authn_i18n.conf b/apps/emqx_gateway/i18n/emqx_gateway_api_authn_i18n.conf index db7d0ce65..0f04b3938 100644 --- a/apps/emqx_gateway/i18n/emqx_gateway_api_authn_i18n.conf +++ b/apps/emqx_gateway/i18n/emqx_gateway_api_authn_i18n.conf @@ -77,17 +77,10 @@ emqx_gateway_api_authn { } } - like_username { + like_user_id { desc { - en: """Fuzzy search by username""" - zh: """Username 模糊搜索""" - } - } - - like_clientid{ - desc { - en: """Fuzzy search by clientid""" - zh: """Client ID 模糊搜索""" + en: """Fuzzy search by user_id (username or clientid)""" + zh: """用户 ID (username 或 clientid)模糊搜索""" } } diff --git a/apps/emqx_gateway/src/emqx_gateway_api_authn.erl b/apps/emqx_gateway/src/emqx_gateway_api_authn.erl index ac071f8ff..3c4b77f97 100644 --- a/apps/emqx_gateway/src/emqx_gateway_api_authn.erl +++ b/apps/emqx_gateway/src/emqx_gateway_api_authn.erl @@ -194,8 +194,7 @@ parse_qstring(Qs) -> [ <<"page">>, <<"limit">>, - <<"like_username">>, - <<"like_clientid">>, + <<"like_user_id">>, <<"is_superuser">> ], Qs @@ -379,26 +378,16 @@ params_paging_in_qs() -> params_fuzzy_in_qs() -> [ - {like_username, + {like_user_id, mk( binary(), #{ in => query, required => false, - desc => ?DESC(like_username), + desc => ?DESC(like_user_id), example => <<"username">> } )}, - {like_clientid, - mk( - binary(), - #{ - in => query, - required => false, - desc => ?DESC(like_clientid), - example => <<"clientid">> - } - )}, {is_superuser, mk( boolean(), diff --git a/apps/emqx_gateway/test/emqx_gateway_api_SUITE.erl b/apps/emqx_gateway/test/emqx_gateway_api_SUITE.erl index 141eca3fe..d2f967c68 100644 --- a/apps/emqx_gateway/test/emqx_gateway_api_SUITE.erl +++ b/apps/emqx_gateway/test/emqx_gateway_api_SUITE.erl @@ -491,7 +491,7 @@ t_authn_fuzzy_search(_) -> } ], - FuzzyDatas = [[{<<"like_username">>, <<"test">>}], [{<<"is_superuser">>, <<"true">>}]], + FuzzyDatas = [[{<<"like_user_id">>, <<"test">>}], [{<<"is_superuser">>, <<"true">>}]], lists:foreach(Create, UserDatas), lists:foreach(Checker, lists:zip(UserDatas, FuzzyDatas)),