Enhancements
#11725 Introduced the LDAP as a new authentication and authorization backend.
#11752 Changed default RPC driver from
gen_rpc
torpc
for core-replica database synchronization.This improves core-replica data replication latency.
#11785 Allowed users with the "Viewer" role to change their own passwords. However, those with the "Viewer" role do not have permission to change the passwords of other users.
#11787 Improved the performance of the
emqx
command.#11790 Added validation to Redis commands in Redis authorization source. Additionally, this improvement refines the parsing of Redis commands during authentication and authorization processes. The parsing now aligns with
redis-cli
compatibility standards and supports quoted arguments.
Bug Fixes
#11757 Fixed the error response code when downloading non-existent trace files. Now the response returns
404
instead of500
.#11762 Fixed an issue in EMQX's
built_in_database
authorization source. With this update, all Access Control List (ACL) records are completely removed when an authorization source is deleted. This resolves the issue of residual records remaining in the database when re-creating authorization sources.#11771 Fixed validation of Bcrypt salt rounds in authentication management through the API/Dashboard.
#11780 Fixed validation of the
iterations
field of thepbkdf2
password hashing algorithm. Now,iterations
must be strictly positive. Previously, it could be set to 0, which led to a nonfunctional authenticator.#11791 Fixed an issue in the EMQX CoAP Gateway where heartbeats were not effectively maintaining the connection's active status. This fix ensures that the heartbeat mechanism properly sustains the liveliness of CoAP Gateway connections.
#11797 Modified HTTP API behavior for APIs managing the
built_in_database
authorization source. They will now return a404
status code ifbuilt_in_database
is not set as the authorization source, replacing the former20X
response.#11965 Improved the termination of EMQX services to ensure a graceful stop even in the presence of an unavailable MongoDB resource.
#11975 This fix addresses an issue where redundant error logs were generated due to a race condition during simultaneous socket closure by a peer and the server. Previously, concurrent socket close events triggered by the operating system and EMQX resulted in unnecessary error logging. The implemented fix improves event handling to eliminate unnecessary error messages.
#11987 Fixed a bug where attempting to set the
active_n
option on a TCP/SSL socket could lead to a connection crash.The problem occurred if the socket had already been closed by the time the connection process attempted to apply the
active_n
setting, resulting in acase_clause
crash.