Merge pull request #9793 from zmstone/0117-use-simple-sync-query-for-authn-authz

0117 use simple sync query for authn authz
This commit is contained in:
Zaiming (Stone) Shi 2023-01-17 20:47:22 +01:00 committed by GitHub
commit 394e8ab6a4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
17 changed files with 28 additions and 22 deletions

View File

@ -192,7 +192,7 @@ authenticate(
} = State
) ->
Request = generate_request(Credential, State),
Response = emqx_resource:query(ResourceId, {Method, Request, RequestTimeout}),
Response = emqx_resource:simple_sync_query(ResourceId, {Method, Request, RequestTimeout}),
?TRACE_AUTHN_PROVIDER("http_response", #{
request => request_for_log(Credential, State),
response => response_for_log(Response),

View File

@ -187,7 +187,7 @@ update(
#{use_jwks := true} = Config,
#{jwk_resource := ResourceId} = State
) ->
case emqx_resource:query(ResourceId, {update, connector_opts(Config)}) of
case emqx_resource:simple_sync_query(ResourceId, {update, connector_opts(Config)}) of
ok ->
case maps:get(verify_claims, Config, undefined) of
undefined ->
@ -229,7 +229,7 @@ authenticate(
from := From
}
) ->
case emqx_resource:query(ResourceId, get_jwks) of
case emqx_resource:simple_sync_query(ResourceId, get_jwks) of
{error, Reason} ->
?TRACE_AUTHN_PROVIDER(error, "get_jwks_failed", #{
resource => ResourceId,

View File

@ -167,7 +167,7 @@ authenticate(
} = State
) ->
Filter = emqx_authn_utils:render_deep(FilterTemplate, Credential),
case emqx_resource:query(ResourceId, {find_one, Collection, Filter, #{}}) of
case emqx_resource:simple_sync_query(ResourceId, {find_one, Collection, Filter, #{}}) of
{ok, undefined} ->
ignore;
{error, Reason} ->

View File

@ -118,7 +118,9 @@ authenticate(
}
) ->
Params = emqx_authn_utils:render_sql_params(TmplToken, Credential),
case emqx_resource:query(ResourceId, {prepared_query, ?PREPARE_KEY, Params, Timeout}) of
case
emqx_resource:simple_sync_query(ResourceId, {prepared_query, ?PREPARE_KEY, Params, Timeout})
of
{ok, _Columns, []} ->
ignore;
{ok, Columns, [Row | _]} ->

View File

@ -120,7 +120,7 @@ authenticate(
}
) ->
Params = emqx_authn_utils:render_sql_params(PlaceHolders, Credential),
case emqx_resource:query(ResourceId, {prepared_query, ResourceId, Params}) of
case emqx_resource:simple_sync_query(ResourceId, {prepared_query, ResourceId, Params}) of
{ok, _Columns, []} ->
ignore;
{ok, Columns, [Row | _]} ->

View File

@ -139,7 +139,7 @@ authenticate(
) ->
NKey = emqx_authn_utils:render_str(KeyTemplate, Credential),
Command = [CommandName, NKey | Fields],
case emqx_resource:query(ResourceId, {cmd, Command}) of
case emqx_resource:simple_sync_query(ResourceId, {cmd, Command}) of
{ok, []} ->
ignore;
{ok, Values} ->

View File

@ -516,13 +516,13 @@ init_seeds() ->
).
q(Sql) ->
emqx_resource:query(
emqx_resource:simple_sync_query(
?MYSQL_RESOURCE,
{sql, Sql}
).
q(Sql, Params) ->
emqx_resource:query(
emqx_resource:simple_sync_query(
?MYSQL_RESOURCE,
{sql, Sql, Params}
).

View File

@ -594,13 +594,13 @@ create_user(Values) ->
ok.
q(Sql) ->
emqx_resource:query(
emqx_resource:simple_sync_query(
?PGSQL_RESOURCE,
{query, Sql}
).
q(Sql, Params) ->
emqx_resource:query(
emqx_resource:simple_sync_query(
?PGSQL_RESOURCE,
{query, Sql, Params}
).

View File

@ -588,7 +588,7 @@ init_seeds() ->
).
q(Command) ->
emqx_resource:query(
emqx_resource:simple_sync_query(
?REDIS_RESOURCE,
{cmd, Command}
).

View File

@ -82,7 +82,7 @@ authorize(
} = Config
) ->
Request = generate_request(PubSub, Topic, Client, Config),
case emqx_resource:query(ResourceID, {Method, Request, RequestTimeout}) of
case emqx_resource:simple_sync_query(ResourceID, {Method, Request, RequestTimeout}) of
{ok, 204, _Headers} ->
{matched, allow};
{ok, 200, Headers, Body} ->

View File

@ -79,7 +79,7 @@ authorize(
RenderedFilter = emqx_authz_utils:render_deep(FilterTemplate, Client),
Result =
try
emqx_resource:query(ResourceID, {find, Collection, RenderedFilter, #{}})
emqx_resource:simple_sync_query(ResourceID, {find, Collection, RenderedFilter, #{}})
catch
error:Error -> {error, Error}
end,

View File

@ -82,7 +82,9 @@ authorize(
}
) ->
RenderParams = emqx_authz_utils:render_sql_params(TmplToken, Client),
case emqx_resource:query(ResourceID, {prepared_query, ?PREPARE_KEY, RenderParams}) of
case
emqx_resource:simple_sync_query(ResourceID, {prepared_query, ?PREPARE_KEY, RenderParams})
of
{ok, _Columns, []} ->
nomatch;
{ok, Columns, Rows} ->

View File

@ -87,7 +87,9 @@ authorize(
}
) ->
RenderedParams = emqx_authz_utils:render_sql_params(Placeholders, Client),
case emqx_resource:query(ResourceID, {prepared_query, ResourceID, RenderedParams}) of
case
emqx_resource:simple_sync_query(ResourceID, {prepared_query, ResourceID, RenderedParams})
of
{ok, _Columns, []} ->
nomatch;
{ok, Columns, Rows} ->

View File

@ -78,7 +78,7 @@ authorize(
}
) ->
Cmd = emqx_authz_utils:render_deep(CmdTemplate, Client),
case emqx_resource:query(ResourceID, {cmd, Cmd}) of
case emqx_resource:simple_sync_query(ResourceID, {cmd, Cmd}) of
{ok, []} ->
nomatch;
{ok, Rows} ->

View File

@ -321,13 +321,13 @@ raw_mysql_authz_config() ->
}.
q(Sql) ->
emqx_resource:query(
emqx_resource:simple_sync_query(
?MYSQL_RESOURCE,
{sql, Sql}
).
q(Sql, Params) ->
emqx_resource:query(
emqx_resource:simple_sync_query(
?MYSQL_RESOURCE,
{sql, Sql, Params}
).

View File

@ -326,13 +326,13 @@ raw_pgsql_authz_config() ->
}.
q(Sql) ->
emqx_resource:query(
emqx_resource:simple_sync_query(
?PGSQL_RESOURCE,
{query, Sql}
).
insert(Sql, Params) ->
{ok, _} = emqx_resource:query(
{ok, _} = emqx_resource:simple_sync_query(
?PGSQL_RESOURCE,
{query, Sql, Params}
),

View File

@ -263,7 +263,7 @@ raw_redis_authz_config() ->
}.
q(Command) ->
emqx_resource:query(
emqx_resource:simple_sync_query(
?REDIS_RESOURCE,
{cmd, Command}
).