Introduction
La pile du serveur OPC UA intégré au module BMENUA0100 prend en charge à la fois des services de découverte et des services de sécurité.
Pour se connecter au serveur OPC UA sur le module BMENUA0100, un client OPC UA requiert des informations décrivant le serveur, notamment son adresse réseau, le protocole et les paramètres de sécurité. L'architecture OPC UA définit un ensemble de fonctionnalités de découverte que le client peut utiliser pour obtenir ces informations.
Les informations nécessaires à établir une connexion entre un client OPC UA et un serveur OPC UA sont stockées sur un point terminal. Un serveur OPC UA peut comporter plusieurs points terminaux, chacun contenant :
URL de point terminal (adresse réseau et protocole), par exemple :
Pour IPv4 : opc.tcp://172.21.2.30:4840, où :
- opc.tcp = protocoles
- 172.21.2.30 = adresse IPv4
- 4840 = numéro de port opcua-tcp configuré dans Control Expert
Pour IPv6 : opc.tcp://[2a01:cb05:431:f00:200:aff:fe02:a0a]:50000, où :
- opc.tcp = protocoles
- [2a01:cb05:431:f00:200:aff:fe02:a0a] = adresse IPv6
- 50000 = numéro de port opcua-tcp configuré dans Control Expert
Règles de sécurité (notamment ensemble d'algorithmes de sécurité et longueur de clé)
Mode de sécurité des messages (niveau de sécurité pour les messages échangés)
Type de jeton utilisateur (types d'authentification d'utilisateur pris en charge par le serveur)
Il peut y avoir un ou plusieurs serveurs OPC UA. Dans le cas de plusieurs serveurs, un serveur de découverte peut fournir les informations relatives à chacun des serveurs. Chaque serveur peut s'enregistrer auprès du serveur de découverte. Les clients peuvent demander au serveur de découverte une liste de serveurs disponibles (tous les serveurs ou une partie), et utiliser le service GetEndpoints pour obtenir les informations de connexion auprès de chaque serveur.

Le module BMENUA0100 prend en charge plusieurs services de découverte et services de sécurité, notamment :
Ensemble de services Discovery
Ensemble de services SecureChannel
Ensemble de services Session
La décision d'activer ou de désactiver des services dépend de la règle de cybersécurité que vous choisissez d'implémenter pour le serveur.
Ensemble de services Discovery
La pile de serveur OPC UA du module BMENUA0100 prend en charge l'ensemble de services Discovery, qui est intégré à la facette de serveur central 2017. L'implémentation sur le module BMENUA0100 prend en charge les services suivants :
FindServers : Dans l'implémentation sur la pile du serveur OPC UA du module BMENUA0100, ce service recherche tous les serveurs sur le serveur OPC UA local uniquement.
GetEndpoints : Renvoie les points terminaux (Endpoints) pris en charge par un serveur et toutes les informations de configuration requises pour établir un canal sécurisé (SecureChannel) et une Session. Peut fournir une liste de retour des points terminaux, en fonction des profils.
Ensemble de services SecureChannel
La pile serveur OPC UA du module BMENUA0100 prend en charge l'ensemble de services SecureChannel, qui inclut les services suivants :
OpenSecureChannel : Ouvre ou renouvelle un canal sécurisé (SecureChannel) qui fournit la confidentialité et l'intégrité de l'échange des messages pendant une session. Ce Service requiert que la pile du serveur OPC UA applique les divers algorithmes de sécurité aux messages lors de leur envoi et leur réception.
CloseSecureChannel : Ferme un canal sécurisé.
Ensemble de services Session
La pile de serveur OPC UA du module BMENUA0100 prend en charge l'ensemble de services Session, qui est intégré à la facette de serveur central 2017. L'implémentation sur le module BMENUA0100 prend en charge les services suivants :
CreateSession : Après la création d'un canal sécurisé avec le service OpenSecureChannel, un client utilise ce service pour créer une session. Le serveur renvoie deux valeurs qui identifient de façon unique la session :
Un ID de session, qui permet d'identifier la session dans les journaux d'audit et dans l'espace d'adresses du serveur.
Un jeton d'authentification (authenticationToken), qui permet d'associer une requête entrante à une session.
ActivateSession : Utilisé par le client pour spécifier l'identité de l'utilisateur associé à la session. Ne peut pas être utilisé pour changer l'utilisateur de la session.
CloseSession : Met fin à une session.
Le certificat d'application et le nombre nonce sont facultatifs.
Les signatures sont nulles ou vides.