From aefe0ab4acfcf5f9ff83bba0c917c4e6544173f1 Mon Sep 17 00:00:00 2001 From: Chimit Date: Tue, 7 Feb 2017 18:24:37 +0800 Subject: [PATCH] Add ClientId parameter into the auth on HTTP Publish --- src/emqttd_http.erl | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/emqttd_http.erl b/src/emqttd_http.erl index 8ad37dd10..6da243df2 100644 --- a/src/emqttd_http.erl +++ b/src/emqttd_http.erl @@ -128,13 +128,15 @@ validate(topic, Topic) -> %%-------------------------------------------------------------------- authorized(Req) -> + Params = mochiweb_request:parse_post(Req), + ClientId = get_value("client", Params, http), case Req:get_header_value("Authorization") of undefined -> false; "Basic " ++ BasicAuth -> {Username, Password} = user_passwd(BasicAuth), {ok, Peer} = Req:get(peername), - case emqttd_access_control:auth(#mqtt_client{username = Username, peername = Peer}, Password) of + case emqttd_access_control:auth(#mqtt_client{client_id = ClientId, username = Username, peername = Peer}, Password) of ok -> true; {ok, _IsSuper} ->