Pila estándar OPC UA .NET oficial desde la Fundación OPC
Descripción general
Esta implementación de referencia OPC UA está dirigida a la especificación estándar de .NET.
.NET Standard permite desarrollar aplicaciones que se ejecutan en todas las plataformas comunes disponibles hoy, incluidas Linux, iOS, Android (a través de Xamarin) y Windows 7/8/8.1/10/11 (incluidas ediciones integradas/IoT) sin requerir modificaciones específicas de la plataforma .
Una de las implementaciones de referencia dentro de este proyecto ha sido certificada para el cumplimiento a través de un laboratorio de pruebas de certificación de la Fundación OPC para demostrar su alta calidad. Las correcciones y mejoras desde el proceso de certificación se han probado y verificado para el cumplimiento utilizando la última herramienta de prueba de cumplimiento (CTT).
Además, también son compatibles de aplicaciones y servicios en la nube (como ASP.NET, DNX, sitios web de Azure, JobsBobs, Azure Nano Server y Azure Service Fabric).
Se pueden encontrar más muestras basadas en los paquetes oficiales de NUGET en el repositorio de muestras estándar OPC UA .NET. Para el desarrollo también hay una vista previa de Nuget Feed disponible. Para las pruebas locales, un contenedor de Docker del servidor de referencia está disponible para la vista previa y las compilaciones de lanzamiento.
Para obtener más información y términos de licencia, consulte aquí.
Características incluidas
Bibliotecas y bibliotecas
- Pila y bibliotecas OPC UA Core completamente portadas (cliente, servidor, configuración, tipos complejos y ensamblajes GDS).
- Servidor de muestra de referencia y cliente.
- X.509 Soporte de certificado para la autenticación del cliente y del servidor.
- Soporte SHA-2 (hasta SHA512) incluyendo el perfil de seguridad BASIC256SHA256, AES128SHA256RSAOAEP y AES256SHA256RSAPS para configuraciones con necesidades de alta seguridad.
- Anónimo, nombre de usuario y X.509 Autenticación del usuario del certificado.
- UA-TCP y HTTPS transports (cliente y servidor).
- Conecte invertir para el transporte UA-TCP (cliente y servidor).
- Certificado de carpetas y niveles de nivel OS (X509Store) con soporte de Push Global Discovery Server y Server Push .
- Sesiones y suscripciones.
- Una biblioteca de pubsub con muestras.
Características clave y actualizaciones en OPC UA 1.05
- Mejoras de seguridad : mecanismos mejorados de cifrado y autenticación.
- Soporte de CRL : soporte de la lista de revocación de certificados agregado para X509Store en Windows.
- Mejoras de rendimiento : codificación y decodificación binarias más rápidas, reduciendo el uso y la latencia de la memoria.
- Gestión basada en roles : apoyo para roles bien conocidos y roles Usermanagement bien conocidos y rol baseedusermanagement.
- Registro mejorado : registro mejorado con
ILogger
y EventSource
.
Rompiendo cambios y avisos al actualizar de 1.04 a 1.05
- Todavía faltan algunas características para cumplir completamente para 1.05 (por ejemplo, soporte de ECC), pero la certificación para V1.04 todavía es posible con la versión 1.05.
- Seguridad y bloqueo de subprocesos : seguridad mejorada de subprocesos y bloqueo reducido en operaciones de canales seguros.
- Auditoría y redacción : nuevas interfaces para auditar y redactar información confidencial.
Nuevo en 1.05.374.70
- Soporte de CRL para la tienda x509 en Windows
Nuevo en 1.05.373
- 1.05 Nodeset
- Apoyo a los roles bien conocidos y la ubicación de la ubicación de roles.
Nuevo en 1.04.368
- Apoyo mejorado para el registro con
ILogger
y EventSource
. - Soporte para tiendas de certificados personalizados con la interfaz
ICertificateStore
y CertificateStoreType
. - Soporte de cliente y servidor para transferenciaciones.
- Cómo usar el soporte de contenedores con el servidor de referencia.
Muestras y paquetes nuget
- Servidor de referencia de la consola OPC UA para .NET Core. Un contenedor de Linux de las últimas compilaciones está disponible aquí. Consulte también Soporte de contenedores.
- El servidor de referencia OPC UA ha sido certificado para el cumplimiento a través de un laboratorio de prueba de certificación de la Fundación OPC. Las correcciones y mejoras desde el proceso de certificación se han probado y verificado para el cumplimiento utilizando la Herramienta de prueba de cumplimiento (CTT). Todas las versiones se verifican para el cumplimiento de la última herramienta de prueba oficial de cumplimiento por parte de los mantenedores.
- Suscriptor de referencia de referencia y referencia de consola OPC UA para .NET Core y .NET Framework.
- Un paquete oficial OPC UA Nuget del núcleo, cliente, servidor y bibliotecas de configuración está disponible para la integración en proyectos .NET. Nota: El paquete se ha dividido en paquetes de núcleo, cliente y servidor para reducir las dependencias en proyectos donde solo se necesita cliente o servidor. La unión HTTPS ahora es un paquete opcional separado.
- Una vista previa de Nuget Feed está disponible en Azure DevOps.
Información del proyecto
Información general del proyecto
Estado de construcción
Calidad del código
Empezando
Todas las herramientas que necesita para .NET Standard viene con las herramientas de .NET Core. Vea comenzar con .NET Core para lo que necesita.
Cómo construir y ejecutar las muestras de referencia en Visual Studio en Windows
Nota: Dado que .NET Core 2.1 es el final de la vida,
- VS 2017 solo tiene soporte limitado para .NET 4.8.
- VS 2019 solo tiene soporte limitado para .NET 4.8 porque .NET Core 3.1 alcanzó el final de la vida.
- VS 2022 es la versión compatible actual, incluyendo .NET 6.0 (LTS) y .NET 8.0 (LTS).
- Abra el archivo de solución UA reference.sln usando Visual Studio.
- Elija un proyecto en el explorador de soluciones y configúrelo con un clic derecho como
Startup Project
. - Presione
F5
para construir y ejecutar la muestra.
Cómo construir y ejecutar las muestras de consola en Windows, Linux e iOS
Esta sección describe cómo ejecutar la aplicación de muestra ConsolerReferenceServer .
Siga las instrucciones en este artículo para configurar el entorno de línea de comandos de Dotnet para su plataforma. A partir de hoy .NET Core SDK 3.1 es necesario para Visual Studio 2019 y .NET SDK 6.0 es necesario para Visual Studio 2022.
Requisitos previos
- Una vez que el comando
dotnet
esté disponible, navegue a la carpeta raíz en su copia local del repositorio y ejecute dotnet restore 'UA Reference.sln'
. Este comando llama a Nuget para restaurar el árbol de las dependencias.
Iniciar el servidor
- Abra un símbolo del sistema.
- Navegue a la carpeta Aplicaciones/ConsolereReferenceServer .
- Para ejecutar el tipo de muestra del servidor
dotnet run --project ConsoleReferenceServer.csproj -a
.- El servidor ahora se está ejecutando y esperando conexiones.
Observaciones
Certificados autoestimados para las aplicaciones de muestra
Todos los certificados de solicitud requeridos para OPC UA se crean en el primer inicio de cada aplicación en un directorio o tienda de certificados de nivel del sistema operativo y permanecen en uso hasta que se elimine de la tienda. Lea los certificados para obtener más información sobre certificados y tiendas
Servidor de descubrimiento local
Por defecto, todas las aplicaciones de muestra están configuradas para registrarse con un servidor de descubrimiento local (SUD). Aquí se puede descargar una implementación de referencia de un SUD para Windows. Para configurar la confianza con el SUD, los certificados deben intercambiarse o el registro fallará.
Que contribuye
Fomentamos encarecidamente la participación y la contribución de la comunidad a este proyecto. Primero, bifurca el repositorio y confirme tus cambios allí. Una vez contento con sus cambios, puede generar una 'solicitud de extracción'.
Debe aceptar el acuerdo de licencia de contribuyente antes de que podamos aceptar sus cambios. El botón CLA y "Estoy de acuerdo" se muestra automáticamente cuando realiza la solicitud de extracción. Puede obtener una vista previa de CLA aquí.