Partager via


Sécuriser la communication de l’Agent MQTT à l’aide de BrokerListener

Important

Opérations Azure IoT Préversion avec Azure Arc est actuellement en préversion. Vous ne devez pas utiliser ce logiciel en préversion dans des environnements de production.

Lorsqu’une version en disponibilité générale sera publiée, vous devrez déployer une nouvelle installation d’Opérations Azure IoT. Vous ne pourrez pas mettre à niveau une installation en préversion.

Pour connaître les conditions juridiques qui s’appliquent aux fonctionnalités Azure en version bêta, en préversion ou plus généralement non encore en disponibilité générale, consultez l’Avenant aux conditions d’utilisation des préversions de Microsoft Azure.

Pour personnaliser l’accès réseau et la sécurité, utilisez la ressource BrokerListener. Un écouteur correspond à un point de terminaison réseau qui expose le répartiteur au réseau. Vous pouvez avoir une ou plusieurs ressources BrokerListener pour chaque ressource Broker, et donc plusieurs ports avec chacun un contrôle d’accès différent.

Chaque port d’écouteur peut avoir ses propres règles d’authentification et d’autorisation qui définissent qui peut se connecter à l’écouteur et quelles actions il peut effectuer sur le répartiteur. Vous pouvez utiliser les ressources BrokerAuthentication et BrokerAuthorization pour spécifier les stratégies de contrôle d’accès pour chaque écouteur. Cette flexibilité vous permet d’affiner les autorisations et les rôles de vos clients MQTT, en fonction de leurs besoins et de leurs cas d’usage.

Conseil

Vous pouvez accéder au déploiement du MQTT broker par défaut seulement en utilisant l’adresse IP du cluster, le protocole TLS et un jeton de compte de service. Les clients se connectant depuis l’extérieur du cluster ont besoin d’une configuration supplémentaire pour pouvoir se connecter.

Les écouteurs présentent les caractéristiques suivantes :

  • Vous pouvez avoir jusqu’à trois écouteurs. Un écouteur par type de service de loadBalancer, de clusterIp ou de nodePort. Le BrokerListener par défaut nommé écouteur est un type de service clusterIp.
  • Chaque écouteur prend en charge plusieurs ports
  • Les références à BrokerAuthentication et à BrokerAuthorization se font pour un port donné.
  • La configuration TLS fonctionne par port
  • Les noms de service doivent être uniques
  • Les ports ne peuvent pas entrer en conflit sur différents écouteurs

Pour obtenir la liste des paramètres disponibles, consultez les informations de référence sur l’API Écouteur de broker.

BrokerListener par défaut

Lorsque vous déployez Opérations Azure IoT (préversion), le déploiement crée également une ressource BrokerListener nommée default dans l’espace de noms azure-iot-operations. Cet écouteur est lié à la ressource Broker par défaut nommée default qui est également créée pendant le déploiement. L’écouteur par défaut expose le broker sur le port 18883 avec TLS et l’authentification SAT activée. Le certificat TLS est automatiquement managé par le gestionnaire de certificats. L’autorisation est désactivée par défaut.

Pour voir ou modifier l’écouteur :

  1. Dans le portail Azure, accédez à votre instance Opérations IoT.

  2. Sous Ressources Opérations Azure IoT, sélectionnez Agent MQTT.

    Capture d’écran de l’utilisation du portail Azure pour afficher la configuration MQTT d’Opérations Azure IoT.

  3. Dans la liste des écouteurs du broker, sélectionnez l’écouteur par défaut.

    Capture d’écran de l’utilisation du portail Azure pour afficher ou modifier l’écouteur de broker par défaut.

  4. Passez en revue les paramètres de l’écouteur et apportez les modifications nécessaires.

Créer des écouteurs de broker

Cet exemple montre comment créer une ressource BrokerListener nommée loadbalancer-listener pour une ressource Broker. La ressource BrokerListener définit deux ports qui acceptent les connexions MQTT venant des clients.

  • Le premier port écoute le port 1883 sans TLS et l’authentification désactivée. Les clients peuvent se connecter au répartiteur sans chiffrement ni authentification.
  • Le second port écoute le port 18883 avec TLS et l’authentification activée. Seuls les clients authentifiés peuvent se connecter au répartiteur avec le chiffrement TLS. TLS est défini sur automatic, ce qui signifie que l’écouteur utilise le gestionnaire de certificats pour obtenir et renouveler son certificat de serveur.
  1. Dans le portail Azure, accédez à votre instance Opérations IoT.

  2. Sous Ressources Opérations Azure IoT, sélectionnez Agent MQTT.

  3. Sélectionnez Écouteur de l’Agent MQTT pour LoadBalancer>Créer. Vous ne pouvez créer qu’un seul écouteur par type de service. Si vous avez déjà un écouteur du même type de service, vous pouvez ajouter d’autres ports à l’écouteur existant.

    Capture d’écran de l’utilisation du portail Azure pour créer l’Agent MQTT pour l’écouteur de l’équilibreur de charge.

    Entrez les paramètres suivants :

    Setting Description
    Nom Nom de la ressource BrokerListener.
    Nom du service Nom du service Kubernetes associé au BrokerListener.
    Type de service Type de service broker, comme LoadBalancer, NodePort ou ClusterIP.
    Port Numéro de port sur lequel BrokerListener écoute les connexions MQTT.
    Authentification Les informations de référence sur les ressources d’authentification.
    Autorisation Les informations de référence sur les ressources d’autorisation.
    TLS Indique si TLS est activé pour une communication sécurisée. Peut être défini sur Automatique ou sur Manuel.
  4. Sélectionnez Créer un écouteur.