Mosquitto: Autenticación API MQTT con Node-RED

Esta documentación forma parte de la guía Autenticación API. Consulte la guía completa aquí: Cómo autenticar miles de dispositivos usando una API externa.

👋 ¡Bienvenido a la documentación de Stackhero!

Stackhero le ofrece un entorno Mosquitto MQTT en la nube totalmente gestionado, diseñado para ofrecer fiabilidad y flexibilidad:

  • Tráfico ilimitado de mensajes y transferencias de datos, para que sus flujos de trabajo nunca se vean limitados artificialmente.
  • Autenticación ilimitada de dispositivos a través de su propia API externa, facilitando la incorporación y la gestión de accesos.
  • ACLs avanzadas para un control detallado sobre topics, usuarios y acciones.
  • Un nombre de dominio personalizado con HTTPS integrado para endpoints seguros y con su propia marca (por ejemplo: https://mqtt.su-empresa.com).
  • Actualizaciones sin complicaciones: aplique mejoras o parches de seguridad con un solo clic.
  • Rendimiento constante y alta seguridad, con cada instancia ejecutándose en una infraestructura privada y dedicada.

Impulse sus proyectos IoT y reduzca la carga operativa. Puede tener una instancia de Mosquitto MQTT cloud hosting segura y lista para producción en solo unos minutos.

Stackhero para Node-RED incluye un servidor Mosquitto. No obstante, para un uso avanzado, se recomienda tener un servicio Mosquitto independiente. Este ejemplo muestra cómo usar el sistema de autenticación API con un servicio Mosquitto independiente y un servicio Node-RED. Si utiliza el servicio Mosquitto incluido con su Node-RED, esta guía no se aplica a usted.

Stackhero para Node-RED proporciona un ejemplo de conexión API MQTT en el flujo llamado "MQTT authentication". Este flujo también se utiliza con el servidor Mosquitto integrado en Stackhero para Node-RED.

Para usar Node-RED como su punto final de autenticación API, actualice su configuración de Mosquitto de la siguiente manera:

  1. Habilite la opción API authentication.
  2. Establezca el campo Host en su dominio Node-RED.
  3. Elija HTTPS como Protocol e ingrese 443 para el Port.
  4. Especifique la User route como /mqttAuthentication/userGet.
  5. Especifique la ACLs route como /mqttAuthentication/aclCheck.

Para la depuración, puede establecer el "Authentication cache time" en 1 segundo. Una vez que su configuración esté funcionando sin problemas, el valor recomendado es de 30 segundos.

Ejemplo de configuración de MosquittoEjemplo de configuración de Mosquitto

Después de actualizar la configuración de Mosquitto, inicie Node-RED y abra el flujo MQTT authentication. Edite el nodo Users para configurar sus credenciales de usuario. Los ejemplos proporcionados incluyen varias combinaciones de nombres de usuario y contraseñas. No dude en agregar tantos usuarios como sea necesario.

Flujo de autenticación MQTT Node-REDFlujo de autenticación MQTT Node-RED