diff --git a/apps/emqx_auth_gssapi/BSL.txt b/apps/emqx_auth_kerberos/BSL.txt similarity index 100% rename from apps/emqx_auth_gssapi/BSL.txt rename to apps/emqx_auth_kerberos/BSL.txt diff --git a/apps/emqx_auth_gssapi/include/emqx_auth_gssapi.hrl b/apps/emqx_auth_kerberos/include/emqx_auth_kerberos.hrl similarity index 58% rename from apps/emqx_auth_gssapi/include/emqx_auth_gssapi.hrl rename to apps/emqx_auth_kerberos/include/emqx_auth_kerberos.hrl index 3022e4abb..f0f490b53 100644 --- a/apps/emqx_auth_gssapi/include/emqx_auth_gssapi.hrl +++ b/apps/emqx_auth_kerberos/include/emqx_auth_kerberos.hrl @@ -2,15 +2,15 @@ %% Copyright (c) 2024 EMQ Technologies Co., Ltd. All Rights Reserved. %%-------------------------------------------------------------------- --ifndef(EMQX_AUTH_GSSAPI_HRL). --define(EMQX_AUTH_GSSAPI_HRL, true). +-ifndef(EMQX_AUTH_KERBEROS_HRL). +-define(EMQX_AUTH_KERBEROS_HRL, true). -define(AUTHN_MECHANISM_GSSAPI, gssapi). -define(AUTHN_MECHANISM_GSSAPI_BIN, <<"gssapi">>). --define(AUTHN_BACKEND, gssapi). --define(AUTHN_BACKEND_BIN, <<"gssapi">>). +-define(AUTHN_BACKEND, kerberos). +-define(AUTHN_BACKEND_BIN, <<"kerberos">>). --define(AUTHN_TYPE_GSSAPI, {?AUTHN_MECHANISM_GSSAPI, ?AUTHN_BACKEND}). +-define(AUTHN_TYPE_KERBEROS, {?AUTHN_MECHANISM_GSSAPI, ?AUTHN_BACKEND}). -endif. diff --git a/apps/emqx_auth_gssapi/rebar.config b/apps/emqx_auth_kerberos/rebar.config similarity index 100% rename from apps/emqx_auth_gssapi/rebar.config rename to apps/emqx_auth_kerberos/rebar.config diff --git a/apps/emqx_auth_gssapi/src/emqx_auth_gssapi.app.src b/apps/emqx_auth_kerberos/src/emqx_auth_kerberos.app.src similarity index 66% rename from apps/emqx_auth_gssapi/src/emqx_auth_gssapi.app.src rename to apps/emqx_auth_kerberos/src/emqx_auth_kerberos.app.src index e29af9fef..f0f6c5ce6 100644 --- a/apps/emqx_auth_gssapi/src/emqx_auth_gssapi.app.src +++ b/apps/emqx_auth_kerberos/src/emqx_auth_kerberos.app.src @@ -1,9 +1,9 @@ %% -*- mode: erlang -*- -{application, emqx_auth_gssapi, [ - {description, "EMQX gssapi Authentication"}, +{application, emqx_auth_kerberos, [ + {description, "EMQX Kerberos Authentication"}, {vsn, "0.1.0"}, {registered, []}, - {mod, {emqx_auth_gssapi_app, []}}, + {mod, {emqx_auth_kerberos_app, []}}, {applications, [ kernel, stdlib, diff --git a/apps/emqx_auth_gssapi/src/emqx_auth_gssapi_app.erl b/apps/emqx_auth_kerberos/src/emqx_auth_kerberos_app.erl similarity index 56% rename from apps/emqx_auth_gssapi/src/emqx_auth_gssapi_app.erl rename to apps/emqx_auth_kerberos/src/emqx_auth_kerberos_app.erl index 9be82bbf8..3e0015728 100644 --- a/apps/emqx_auth_gssapi/src/emqx_auth_gssapi_app.erl +++ b/apps/emqx_auth_kerberos/src/emqx_auth_kerberos_app.erl @@ -2,19 +2,19 @@ %% Copyright (c) 2024 EMQ Technologies Co., Ltd. All Rights Reserved. %%-------------------------------------------------------------------- --module(emqx_auth_gssapi_app). +-module(emqx_auth_kerberos_app). --include("emqx_auth_gssapi.hrl"). +-include("emqx_auth_kerberos.hrl"). -behaviour(application). -export([start/2, stop/1]). start(_StartType, _StartArgs) -> - ok = emqx_authn:register_provider(?AUTHN_TYPE_GSSAPI, emqx_authn_gssapi), - {ok, Sup} = emqx_auth_gssapi_sup:start_link(), + ok = emqx_authn:register_provider(?AUTHN_TYPE_KERBEROS, emqx_authn_kerberos), + {ok, Sup} = emqx_auth_kerberos_sup:start_link(), {ok, Sup}. stop(_State) -> - ok = emqx_authn:deregister_provider(?AUTHN_TYPE_GSSAPI), + ok = emqx_authn:deregister_provider(?AUTHN_TYPE_KERBEROS), ok. diff --git a/apps/emqx_auth_gssapi/src/emqx_auth_gssapi_sup.erl b/apps/emqx_auth_kerberos/src/emqx_auth_kerberos_sup.erl similarity index 94% rename from apps/emqx_auth_gssapi/src/emqx_auth_gssapi_sup.erl rename to apps/emqx_auth_kerberos/src/emqx_auth_kerberos_sup.erl index 2e97af182..903f42018 100644 --- a/apps/emqx_auth_gssapi/src/emqx_auth_gssapi_sup.erl +++ b/apps/emqx_auth_kerberos/src/emqx_auth_kerberos_sup.erl @@ -2,7 +2,7 @@ %% Copyright (c) 2024 EMQ Technologies Co., Ltd. All Rights Reserved. %%-------------------------------------------------------------------- --module(emqx_auth_gssapi_sup). +-module(emqx_auth_kerberos_sup). -behaviour(supervisor). diff --git a/apps/emqx_auth_gssapi/src/emqx_authn_gssapi.erl b/apps/emqx_auth_kerberos/src/emqx_authn_kerberos.erl similarity index 90% rename from apps/emqx_auth_gssapi/src/emqx_authn_gssapi.erl rename to apps/emqx_auth_kerberos/src/emqx_authn_kerberos.erl index 9420e1993..db2957783 100644 --- a/apps/emqx_auth_gssapi/src/emqx_authn_gssapi.erl +++ b/apps/emqx_auth_kerberos/src/emqx_authn_kerberos.erl @@ -2,9 +2,9 @@ %% Copyright (c) 2024 EMQ Technologies Co., Ltd. All Rights Reserved. %%-------------------------------------------------------------------- --module(emqx_authn_gssapi). +-module(emqx_authn_kerberos). --include("emqx_auth_gssapi.hrl"). +-include("emqx_auth_kerberos.hrl"). -include_lib("emqx_auth/include/emqx_authn.hrl"). -include_lib("typerefl/include/types.hrl"). @@ -44,7 +44,7 @@ destroy(_) -> authenticate( #{ - auth_method := <<"GSSAPI">>, + auth_method := <<"GSSAPI-KERBEROS">>, auth_data := AuthData, auth_cache := AuthCache }, @@ -71,7 +71,7 @@ auth_new(Principal) -> {ok, SaslConn} -> {ok, SaslConn}; Error -> - ?TRACE_AUTHN_PROVIDER("sasl_gssapi_new_failed", #{ + ?TRACE_AUTHN_PROVIDER("sasl_kerberos_new_failed", #{ reason => Error, sasl_function => "server_server_new" }), @@ -86,7 +86,7 @@ auth_begin(SaslConn, ClientToken) -> sasl_auth:server_done(SaslConn), {ok, #{}, ServerToken}; Reason -> - ?TRACE_AUTHN_PROVIDER("sasl_gssapi_start_failed", #{ + ?TRACE_AUTHN_PROVIDER("sasl_kerberos_start_failed", #{ reason => Reason, sasl_function => "server_server_start" }), @@ -102,7 +102,7 @@ auth_continue(SaslConn, ClientToken) -> sasl_auth:server_done(SaslConn), {ok, #{}, ServerToken}; Reason -> - ?TRACE_AUTHN_PROVIDER("sasl_gssapi_step_failed", #{ + ?TRACE_AUTHN_PROVIDER("sasl_kerberos_step_failed", #{ reason => Reason, sasl_function => "server_server_step" }), diff --git a/apps/emqx_auth_gssapi/src/emqx_authn_gssapi_schema.erl b/apps/emqx_auth_kerberos/src/emqx_authn_kerberos_schema.erl similarity index 90% rename from apps/emqx_auth_gssapi/src/emqx_authn_gssapi_schema.erl rename to apps/emqx_auth_kerberos/src/emqx_authn_kerberos_schema.erl index 6dd0e566e..1177023ec 100644 --- a/apps/emqx_auth_gssapi/src/emqx_authn_gssapi_schema.erl +++ b/apps/emqx_auth_kerberos/src/emqx_authn_kerberos_schema.erl @@ -2,9 +2,9 @@ %% Copyright (c) 2024 EMQ Technologies Co., Ltd. All Rights Reserved. %%-------------------------------------------------------------------- --module(emqx_authn_gssapi_schema). +-module(emqx_authn_kerberos_schema). --include("emqx_auth_gssapi.hrl"). +-include("emqx_auth_kerberos.hrl"). -include_lib("hocon/include/hoconsc.hrl"). -behaviour(emqx_authn_schema). @@ -20,7 +20,7 @@ namespace() -> "authn". refs() -> - [?R_REF(gssapi)]. + [?R_REF(kerberos)]. select_union_member(#{ <<"mechanism">> := ?AUTHN_MECHANISM_GSSAPI_BIN, <<"backend">> := ?AUTHN_BACKEND_BIN @@ -34,7 +34,7 @@ select_union_member(#{<<"mechanism">> := ?AUTHN_MECHANISM_GSSAPI_BIN}) -> select_union_member(_) -> undefined. -fields(gssapi) -> +fields(kerberos) -> emqx_authn_schema:common_fields() ++ [ {mechanism, emqx_authn_schema:mechanism(?AUTHN_MECHANISM_GSSAPI)}, @@ -58,7 +58,7 @@ fields(gssapi) -> })} ]. -desc(gssapi) -> - "Settings for GSSAPI authentication."; +desc(kerberos) -> + "Settings for Kerberos authentication."; desc(_) -> undefined. diff --git a/apps/emqx_conf/src/emqx_conf_schema_inject.erl b/apps/emqx_conf/src/emqx_conf_schema_inject.erl index 3191cd850..6d734f9ff 100644 --- a/apps/emqx_conf/src/emqx_conf_schema_inject.erl +++ b/apps/emqx_conf/src/emqx_conf_schema_inject.erl @@ -57,7 +57,7 @@ authn_mods(ee) -> authn_mods(ce) ++ [ emqx_gcp_device_authn_schema, - emqx_authn_gssapi_schema + emqx_authn_kerberos_schema ]. authz() -> diff --git a/rel/i18n/emqx_authn_gssapi_schema.hocon b/rel/i18n/emqx_authn_kerberos_schema.hocon similarity index 79% rename from rel/i18n/emqx_authn_gssapi_schema.hocon rename to rel/i18n/emqx_authn_kerberos_schema.hocon index 875f8c965..5b62b8b0c 100644 --- a/rel/i18n/emqx_authn_gssapi_schema.hocon +++ b/rel/i18n/emqx_authn_kerberos_schema.hocon @@ -1,10 +1,10 @@ -emqx_authn_gssapi_schema { +emqx_authn_kerberos_schema { principal { label: "Kerberos Principal" desc: """~ - SASL GSSAPI authentication Kerberos principal. - For example mqtt/node1.example.com@MY_REALM.EXAMPLE.COM. + Server Kerberos principal. + For example mqtt/emqx-cluster-1.example.com@MY_REALM.EXAMPLE.COM. NOTE: The realm in use has to be configured in /etc/krb5.conf in EMQX nodes.~""" } @@ -24,7 +24,7 @@ server_fqdn { keytab_file { label: "Keytab File" desc: """~ - SASL GSSAPI authentication Kerberos keytab file path. + Kerberos keytab file path. NOTE: This file has to be placed in EMQX nodes.~""" }