Skip to main content

Configuration de Microsoft Azure

Avis

Vous avez besoin d'un compte pour configurer Azure. Pour plus d'informations, consultez le Microsoft site web.

Tous les modules sont appelés ressources.

Présentation : Structure d'une grille d'événements Azure

Avis

Le schéma suivant est un aperçu incomplet de la véritable architecture Azure concernant l'Event Grid. La représentation simplifiée met l'accent sur les éléments pertinents pour la communication MQTT entre les clients via la grille d'événements

Les différents éléments seront expliqués plus en détail dans les sections suivantes. La grille d'événements se compose d'un ensemble d'espaces de noms de grille d'événements spécifiques

_example_img_azure_1.png

Préparation générale

Pour utiliser la grille d'événements, les ressources suivantes doivent exister dans votre compte Azure :

  • Un abonnement valide

  • Un groupe de ressources

Ces deux ressources essentielles sont principalement nécessaires à l'organisation et à la facturation.

Avis

Pour plus d'informations sur les ressources, les composants de ces ressources et leur configuration, consultez le Portail Microsoft Azure.

Création d'un espace de noms Event Grid

Les étapes suivantes sont personnalisées pour être utilisées avec CODESYS MQTT est un client et représentent un exemple concret et cohérent.

Pour plus d'informations, consultez les rubriques suivantes : Démarrage rapide par Microsoft.

  1. Créez une ressource « Event Grid Namespace ».

    Pour plus d'informations, consultez les rubriques suivantes : Page d'aide de Microsoft Azure.

    Cette ressource contient toutes les fonctionnalités à utiliser et inclut les paramètres généraux les plus importants.

  2. Activez le courtier MQTT.

    Un système de gestion des identités côté Microsoft via Microsoft Entra n'est pas obligatoire.

    Pour plus d'informations sur les restrictions et fonctionnalités actuelles du broker MQTT dans Azure Event Grid, consultez les rubriques suivantes : Page d'aide de Microsoft Azure.

  3. Sur le Vue d'ensemble onglet, copiez le nom d'hôte MQTT. Ces informations seront nécessaires ultérieurement.

    Il s'agit de l'URL du courtier MQTT dans cet espace de noms Event Grid auquel les clients peuvent se connecter.

Création d'un client MQTT

  1. Pour le courtier MQTT de l'espace de noms Event Grid créé, définissez les clients MQTT autorisés à se connecter au courtier.

    Pour plus d'informations sur la création de clients MQTT, consultez les rubriques suivantes : Page d'aide de Microsoft Azure.

  2. Créez le client CODESYS MQTT.

    Le formulaire pour créer un client MQTT ressemble à ceci sur le portail Azure :

    _example_img_azure_2.png

    Après avoir sélectionné la méthode d'authentification par empreinte numérique, la section suivante s'affiche :

    _example_img_azure_3.png
  3. Configurez le client en fonction des informations suivantes :

    Paramètre

    Exemple de valeur

    Descriptif

    Client Name

    CODESYS MQTT Client

    Le nom du client peut être choisi librement et doit être unique dans un espace de noms Event Grid.

    Ce nom n'est pas associé à l'ID client d'un client MQTT.

    Client Description

    My CODESYS PLC

    Description facultative, par exemple pour un administrateur d'Event Grid afin de faciliter l'identification d'un client.

    Client Authentification Name

    my-auth-name

    Cette valeur est utilisée pour authentifier le client lors de l'établissement d'une connexion.

    Important

    La valeur définie ici sera requise ultérieurement lors du paramétrage de CODESYS Client MQTT.

    La valeur ne peut plus être modifiée dans la grille d'événements une fois l'identité du client créée.

    Ce nom d'authentification peut, mais ne doit pas nécessairement, correspondre à l'ID client d'un client MQTT ou à un champ d'un certificat client pour fonctionner.

    Le client doit envoyer un nom d'authentification client en tant que nom d'utilisateur MQTT lors de l'établissement d'une connexion. Cela permet d'attribuer le certificat entrant à l'identité du client. Cette identité est utilisée à des fins d'authentification.

    Client Certificate AuthentificationValidation Scheme

    Thumbprint Match

    Dans le cas de l'authentification « Thumbprint Match », l'empreinte numérique est lue à partir d'un certificat client qui est échangé entre le client et le serveur lors de la prise de contact TLS. Si l'empreinte numérique du certificat correspond à l'empreinte enregistrée dans la grille d'événements pour cette identité de client, l'authentification est considérée comme

    Astuce

    Pour plus d'informations sur les méthodes d'authentification, consultez les rubriques suivantes : Page d'aide de Microsoft Azure.

    Primary Thumbprint

    <HEX-String>

    Empreinte numérique d'un certificat. Ce champ, ainsi que l'empreinte numérique secondaire, peuvent d'abord être laissés vides lors de la création de l'identité du client. La valeur de l'empreinte numérique est une chaîne hexadécimale

    Important

    Pour un certificat, l'empreinte numérique peut être rendue visible à l'aide de plusieurs algorithmes qui génèrent des chaînes HEX de différentes longueurs. Azure prend en charge plusieurs formats d'empreintes digitales

    Connection Status

    Enabled

    Avec ce commutateur, l'identité du client peut être activée ou désactivée afin d'autoriser ou de refuser à ce client une connexion au broker Event Grid MQTT.

    Client Attributes

    Attribute (
        Key: Group
        Type: String
        Value: MyGroup
    )

    Les attributs client sont des métadonnées relatives à l'identité d'un client qui peuvent être utilisées pour le regroupement en groupes de clients. Dans cet exemple, un attribut nommé Group de type String est créée et la valeur MyGroup est réglé. Cela permet d'identifier le client ultérieurement par le biais d'une requête.

Création d'un groupe de clients

Un groupe de clients est un groupe de clients auxquels des politiques ou autorisations communes doivent s'appliquer, par exemple.

  1. Créez un groupe de clients.

    Pour plus d'informations, consultez les rubriques suivantes : Page d'aide de Microsoft Azure.

    Au moins un groupe doit être créé.

    Le formulaire pour créer un groupe de clients ressemble à ceci sur le portail Azure :

    _example_img_azure_4.png
  2. Configurez le groupe de clients en fonction des informations suivantes :

    Paramètre

    Exemple de valeur

    Descriptif

    Group Name

    MyClientGroup

    Un nom de groupe librement choisi qui sera utilisé ultérieurement pour lier ce groupe de clients.

    Query

    attributes.Group = "MyGroup"

    Requête visant à regrouper les clients en fonction de leurs caractéristiques.

    Pour plus d'informations sur la manière dont les requêtes doivent être structurées, consultez les rubriques suivantes : Page d'aide de Microsoft Azure.

    Dans la valeur d'exemple, Group l'attribut, qui a été défini précédemment lors de la création du client, est utilisé et vérifié avec le MyGroup valeur. Si un seul client a été créé à l'étape précédente, il sera le seul affecté à ce groupe de clients.

    Description

    My Clients

    Description facultative destinée à aider les administrateurs.

Création d'un espace thématique

Un espace thématique est une collection de modèles de sujets MQTT. Vous définissez ici les sujets pour lesquels vous attribuez des autorisations collectivement dans la configuration des autorisations d'accès.

  1. Création d'un espace thématique

    Pour plus d'informations, consultez les rubriques suivantes : Page d'aide de Microsoft Azure.

    Le formulaire permettant de créer un espace thématique ressemble à ceci sur le portail Azure :

    _example_img_azure_5.png
  2. Configurez l'espace thématique en fonction des informations suivantes :

    Paramètre

    Exemple de valeur

    Descriptif

    Name

    MyTopicSpace

    Un nom librement choisi qui sera utilisé ultérieurement pour relier cet espace thématique.

    Topic templates

    permitted/#

    Caractères génériques (#, +) et les variables peuvent être utilisées dans les modèles de rubriques.

    Pour plus d'informations, consultez les rubriques suivantes : Page d'aide de Microsoft Azure.

    Dans la valeur d'exemple, n'importe quel sujet (même imbriqué arbitrairement) est affecté à cet espace thématique tant que la racine de la hiérarchie des sujets est permitted.

Définition des autorisations

Les autorisations sont accordées pour une combinaison de groupes de clients et d'espaces thématiques. Il existe deux types d'autorisations qui peuvent être définis :

  • Abonné : tous les clients du groupe de clients spécifié sont autorisés à lire les messages d'une rubrique attribuée à l'espace thématique spécifié.

  • Éditeur : tous les clients du groupe de clients spécifié sont autorisés à écrire des messages sur une rubrique attribuée à l'espace thématique spécifié.

  1. Définissez les autorisations du groupe de clients et de l'espace thématique.

    Le formulaire permettant de créer un espace thématique ressemble à ceci sur le portail Azure :

    _example_img_azure_6.png
  2. Configurez les autorisations en fonction des informations suivantes :

    Paramètre

    Exemple de valeur

    Descriptif

    Name

    MySubscriberPermission / MyPublisherPermission

    Un nom unique et librement choisi.

    Client Group Name

    MyClientGroup

    Une référence à un groupe de clients existant. La valeur d'exemple MyClientGroup lie le groupe de clients créé précédemment à cette autorisation. Cela donne à tous les clients de ce groupe un accès correspondant à l'espace thématique défini (Topic Space Name).

    Topic Space Name

    MyTopicSpace

    Référence à un espace thématique existant. La valeur d'exemple MyTopicSpace lie l'espace thématique créé précédemment à cette autorisation. Cela signifie que tous les clients du groupe de clients spécifié (Client Group Name) sont autorisés pour les sujets affectés à l'espace thématique spécifié ici.

    Permission

    Subscriber /Publisher

    Des autorisations de lecture ou d'écriture sont accordées aux clients dans l'espace thématique.

Ceci met fin à la configuration côté Azure pour le moment.