Mosquitto: MQTT-API-Authentifizierung mit Node-RED

Diese Dokumentation ist Teil des API-Authentifizierung-Leitfadens. Den vollständigen Leitfaden finden Sie hier: Wie man Tausende von Geräten mit einer externen API authentifiziert.

👋 Willkommen in der Stackhero-Dokumentation!

Stackhero bietet eine einsatzbereite Mosquitto MQTT Cloud Lösung, die zahlreiche Vorteile bietet, darunter:

  • Unbegrenzter Nachrichtenaustausch und -transfer.
  • Unbegrenzte Geräteauthentifizierung über eine externe API.
  • Erweiterte ACLs für Themen, Benutzer und Aktionen.
  • Anpassbarer Domainname gesichert mit HTTPS (zum Beispiel, https://mqtt.ihre-firma.com).
  • Mühelose Updates mit nur einem Klick.
  • Optimale Leistung und robuste Sicherheit durch eine private und dedizierte VM.

Sparen Sie Zeit und vereinfachen Sie Ihr Leben: Es dauert nur 5 Minuten, um die Mosquitto MQTT Cloud Hosting Lösung von Stackhero auszuprobieren!

Stackhero für Node-RED enthält einen Mosquitto-Server. Dennoch wird für die erweiterte Nutzung ein eigenständiger Mosquitto-Dienst empfohlen. Dieses Beispiel zeigt, wie das API-Authentifizierungssystem mit einem eigenständigen Mosquitto-Dienst und einem Node-RED-Dienst verwendet wird. Wenn Sie den mit Ihrem Node-RED enthaltenen Mosquitto-Dienst verwenden, gilt dieser Leitfaden nicht für Sie.

Stackhero für Node-RED bietet ein Beispiel für eine MQTT-API-Verbindung im Flow namens "MQTT authentication". Dieser Flow wird auch mit dem integrierten Mosquitto-Server in Stackhero für Node-RED verwendet.

Um Node-RED als API-Authentifizierungspunkt zu verwenden, aktualisieren Sie Ihre Mosquitto-Konfiguration wie folgt:

  1. Aktivieren Sie die Option API authentication.
  2. Setzen Sie das Feld Host auf Ihre Node-RED-Domain.
  3. Wählen Sie HTTPS als Protocol und geben Sie 443 für den Port ein.
  4. Geben Sie die User route als /mqttAuthentication/userGet an.
  5. Geben Sie die ACLs route als /mqttAuthentication/aclCheck an.

Für das Debugging können Sie die "Authentication cache time" auf 1 Sekunde setzen. Sobald Ihre Einrichtung reibungslos funktioniert, wird ein Wert von 30 Sekunden empfohlen.

Beispiel für Mosquitto-KonfigurationBeispiel für Mosquitto-Konfiguration

Nachdem Sie die Mosquitto-Konfiguration aktualisiert haben, starten Sie Node-RED und öffnen Sie den MQTT authentication-Flow. Bearbeiten Sie den Users-Knoten, um Ihre Benutzeranmeldedaten zu konfigurieren. Die bereitgestellten Beispiele enthalten mehrere Kombinationen von Benutzernamen und Passwörtern. Fügen Sie nach Bedarf so viele Benutzer hinzu.

Node-RED MQTT-Authentifizierungs-FlowNode-RED MQTT-Authentifizierungs-Flow