Standard officiel de l'OPC UA .NET de la Fondation OPC
Aperçu
Cette implémentation de référence OPC UA cible la spécification standard .NET.
.NET Standard permet de développer des applications qui s'exécutent sur toutes les plates-formes courantes disponibles aujourd'hui, y compris Linux, iOS, Android (via Xamarin) et Windows 7/8 / 8.1/10/11 (y compris les éditions intégrées / IoT) sans nécessiter de modifications spécifiques à la plate-forme .
L'une des implémentations de référence à l'intérieur de ce projet a été certifiée pour la conformité par le biais d'un laboratoire de test de certification de la Fondation OPC pour prouver sa haute qualité. Les correctifs et les améliorations depuis le processus de certification ont été testés et vérifiés pour la conformité à l'aide du dernier outil de test de conformité (CTT).
En outre, les applications et services cloud (tels que ASP.NET, DNX, les sites Web Azure, Azure WebJobs, Azure Nano Server et Azure Service Fabric) sont également pris en charge.
Plus d'échantillons basés sur les packages NuGet officiels peuvent être trouvés dans le référentiel d'échantillons standard OPC UA .NET. Pour le développement, il existe également un aperçu du flux NuGet disponible. Pour les tests locaux, un conteneur Docker du serveur de référence est disponible pour les versions de prévisualisation et de version.
Pour plus d'informations et des conditions de licence, consultez ici.
Caractéristiques incluses
Noyau et bibliothèques
- Pile d'OPC UA entièrement portée et bibliothèques (client, serveur, configuration, types complexes et assemblages GDS).
- Reference Exemple de serveur et client.
- Prise en charge du certificat X.509 pour l'authentification client et serveur.
- Prise en charge SHA-2 (jusqu'à SHA512), y compris le profil de sécurité Basic256Sha256, AES128SHA256RSAOAEP et AES256SHA256RSAPS pour les configurations avec des besoins de haute sécurité.
- Anonyme, nom d'utilisateur et authentification des utilisateurs du certificat X.509.
- Transports UA-TCP & HTTPS (client et serveur).
- Connexion inversée pour le transport UA-TCP (client et serveur).
- Stores de certificat de niveau et de niveau OS (X509Store) avec Global Discovery Server et Server Push Prise en charge.
- Sessions et abonnements.
- Une bibliothèque Pubsub avec des échantillons.
Caractéristiques clés et mises à jour dans OPC UA 1.05
- Améliorations de la sécurité : amélioration des mécanismes de cryptage et d'authentification.
- Prise en charge du CRL : Ajout de la prise en charge de la liste de révocation du certificat pour X509Store sur Windows.
- Améliorations des performances : codage binaire et décodage plus rapide, réduisant l'utilisation et la latence de la mémoire.
- Gestion basée sur les rôles : Support pour les œuvres bien connues et les fonctionnalités basées sur les rôles Welonfroles & RolebasedUserManagement.
- Amélioration de la journalisation : journalisation améliorée avec
ILogger
et EventSource
.
Rompre les changements et la tête lors de la mise à niveau de 1,04 à 1,05
- Quelques fonctionnalités sont toujours manquantes pour se conformer pleinement pour 1,05 (par exemple, le support ECC), mais la certification pour V1.04 est toujours possible avec la version 1.05.
- Sécurité et verrouillage des filetages : sécurité de filetage améliorée et verrouillage réduit dans les opérations de canal sécurisées.
- Audit et rédaction : nouvelles interfaces pour l'audit et la réduction des informations sensibles.
Nouveau en 1.05.374.70
- Prise en charge du CRL pour le X509Store sur Windows
Nouveau en 1.05.373
- 1,05
- Support pour les produits bien connus et les insertions de rôle.
Nouveau en 1.04.368
- Amélioration du support pour la journalisation avec
ILogger
et EventSource
. - Prise en charge des magasins de certificats personnalisés avec une interface refactorisée
ICertificateStore
et CertificateStoreType
. - Prise en charge du client et du serveur pour les transferts-subscriptions.
- Comment utiliser la prise en charge des conteneurs avec le serveur de référence.
Échantillons et packages NuGet
- Serveur de référence de la console OPC UA pour .NET Core. Un conteneur Linux des dernières constructions est disponible ici. Voir aussi le support de conteneur.
- Le serveur de référence OPC UA a été certifié pour la conformité via un laboratoire de test de certification de la Fondation OPC. Les correctifs et les améliorations depuis le processus de certification ont été testés et vérifiés pour la conformité à l'aide de l'outil de test de conformité (CTT). Toutes les sorties sont vérifiées pour la conformité avec le dernier outil de test de conformité officiel par les responsables.
- OPC UA Console Reference Publisher and Console Reference Abonné pour .NET Core et .NET Framework.
- Un package OPC UA NuGet officiel des bibliothèques CORE, CLIENT, SERVER et Configuration est disponible pour l'intégration dans .NET Projets. Remarque: Le package a été divisé en packages Core, Client et Server pour réduire les dépendances dans les projets où seul le client ou le serveur est nécessaire. La liaison HTTPS est désormais un package optionnel séparé.
- Un flux NuGet de prévisualisation est disponible auprès d'Azure DevOps.
Informations sur le projet
Informations générales sur le projet
Statut de construction
Qualité du code
Commencer
Tous les outils dont vous avez besoin pour .NET Standard sont livrés avec les outils de base .NET. Voir commencer avec .NET Core pour ce dont vous avez besoin.
Comment construire et exécuter les échantillons de référence dans Visual Studio sur Windows
Remarque: Puisque .net Core 2.1 est la fin de la vie,
- VS 2017 n'a qu'une prise en charge limitée pour .NET 4.8.
- VS 2019 n'a qu'un support limité pour .NET 4.8, car .NET Core 3.1 a atteint la fin de vie.
- VS 2022 est la version prise en charge actuelle, y compris .NET 6.0 (LTS) et .NET 8.0 (LTS).
- Ouvrez le fichier de solution UA Reference.SLN à l'aide de Visual Studio.
- Choisissez un projet dans l'explorateur de solutions et définissez-le avec un clic droit en tant que
Startup Project
. - Appuyez sur
F5
pour construire et exécuter l'échantillon.
Comment construire et exécuter les échantillons de console sur Windows, Linux et iOS
Cette section décrit comment exécuter l'application ConsoleReferencesServer .
Veuillez suivre les instructions de cet article pour configurer l'environnement de ligne de commande DOTNET pour votre plate-forme. À partir d'aujourd'hui, .NET Core SDK 3.1 est requis pour Visual Studio 2019 et .NET SDK 6.0 est requis pour Visual Studio 2022.
Condition préalable
- Une fois la commande
dotnet
disponible, accédez au dossier racine dans votre copie locale du référentiel et exécutez dotnet restore 'UA Reference.sln'
. Cette commande appelle Nuget pour restaurer l'arbre des dépendances.
Démarrer le serveur
- Ouvrez une invite de commande.
- Accédez aux applications du dossier / ConsoleReferencesServer .
- Pour exécuter le type d'échantillon de serveur
dotnet run --project ConsoleReferenceServer.csproj -a
.- Le serveur s'exécute maintenant et attend des connexions.
Remarques
Certificats auto-signés pour les échantillons de demandes
Tous les certificats d'application requis pour OPC UA sont créés au premier démarrage de chaque application dans un magasin de certificats de répertoire ou de niveau OS et restent en service jusqu'à ce qu'ils soient supprimés du magasin. Veuillez lire les certificats pour plus d'informations sur les certificats et les magasins
Serveur de découverte local
Par défaut, toutes les exemples d'applications sont configurées pour s'inscrire auprès d'un serveur de découverte local (LDS). Une implémentation de référence d'un LDS pour Windows peut être téléchargée ici. Pour configurer la confiance avec les LDS, les certificats doivent être échangés ou l'enregistrement échouera.
Contributif
Nous encourageons fortement la participation et la contribution de la communauté à ce projet. Tout d'abord, veuillez débarquer le référentiel et y engager vos modifications. Une fois satisfait de vos modifications, vous pouvez générer une «demande de traction».
Vous devez accepter le contrat de licence des contributeurs avant de pouvoir accepter vos modifications. Le bouton CLA et "Je suis d'accord" s'affiche automatiquement lorsque vous effectuez la demande de traction. Vous pouvez prévisualiser CLA ici.