2.1 KiB
Contributed Plugins
These are fully supported plugins but require additional dependencies to be installed:
$ pip install '.[contrib]'
-
Relational Database Auth
Grant or deny access to clients based on entries in a relational db (mysql, postgres, maria, sqlite). Includes manager script to add, remove and create db entriesamqtt.contrib.auth_db.UserAuthDBPlugin
amqtt.contrib.auth_db.TopicAuthDBPlugin
-
HTTP Auth
Determine client authentication and/or authorization based on response from a separate HTTP server.amqtt.contrib.http.UserAuthHttpPlugin
amqtt.contrib.http.TopicAuthHttpPlugin
-
LDAP Auth
Authenticate a user with an LDAP directory server.amqtt.contrib.ldap.UserAuthLdapPlugin
amqtt.contrib.ldap.TopicAuthLdapPlugin
-
Shadows
Device shadows provide a persistent, cloud-based representation of the state of a device, even when the device is offline. This plugin tracks the desired and reported state of a client and provides MQTT topic-based communication channels to retrieve and update a shadow.
amqtt.contrib.shadows.ShadowPlugin
-
Certificate Auth
Using client-specific certificates, signed by a common authority (even if self-signed) provides a highly secure way of authenticating mqtt clients. Often used with IoT devices where a unique certificate can be initialized on initial provisioning. Includes command line utilities to generate root, broker and device certificates with the correct X509 attributes to enable authenticity.
amqtt.contrib.cert.UserAuthCertPlugin
-
JWT Auth
Plugin to determine user authentication and topic authorization based on claims in a JWT.amqtt.contrib.jwt.UserAuthJwtPlugin
(client authentication)amqtt.contrib.jwt.TopicAuthJwtPlugin
(topic authorization)
-
Session Persistence
Plugin to store session information and retained topic messages in the event that the broker terminates abnormally.
amqtt.contrib.persistence.SessionDBPlugin