Interface EnhancedAuthenticator


public interface EnhancedAuthenticator
Interface for the enhanced authentication of MQTT clients.

Enhanced authentication can use AUTH packets (introduced in MQTT 5) to implement:

  • challenge/response style authentication and
  • re-authentication

Enhanced authentication has two life cycles:

An EnhancedAuthenticator can be provided by an EnhancedAuthenticatorProvider. The provider is only called once per client connection, enabling the EnhancedAuthenticator to store state between the initial authentication and later re-authentication(s).

If an implementation stores state, an object of the implementation can not be shared by different clients. If no state is stored, the implementation has to be thread safe if it is shared by different clients.

Since:
4.3.0, CE 2020.1