OPC 재단의 공식 OPC UA .NET 표준 스택
개요
이 OPC UA 참조 구현은 .NET 표준 사양을 대상으로합니다.
.NET Standard는 플랫폼 별 수정을 필요없이 Linux, iOS, Android (Xamarin) 및 Windows 7/8/8.1/10/11 (내장/IoT 에디션 포함)을 포함하여 오늘날 사용 가능한 모든 공통 플랫폼에서 실행되는 앱을 개발할 수 있습니다. .
이 프로젝트 내의 참조 구현 중 하나는 OPC Foundation Certification Test Lab을 통한 규정 준수 인증을 받아 고품질을 증명했습니다. 인증 프로세스가 최신 규정 준수 테스트 도구 (CTT)를 사용하여 준수를 위해 테스트 및 검증 된 이후 수정 및 향상.
또한 클라우드 애플리케이션 및 서비스 (예 : ASP.NET, DNX, Azure 웹 사이트, Azure Webjobs, Azure Nano Server 및 Azure Service Fabric)도 지원됩니다.
공식 NUGET 패키지를 기반으로 한 더 많은 샘플은 OPC UA .NET 표준 샘플 리포지토리에서 찾을 수 있습니다. 개발을 위해서는 미리보기 NUGET 피드도 있습니다. 로컬 테스트의 경우 참조 서버의 Docker 컨테이너를 미리보기 및 릴리스 빌드에 사용할 수 있습니다.
자세한 내용 및 라이센스 조건은 여기를 참조하십시오.
기능이 포함되어 있습니다
핵심 및 라이브러리
- 완전히 포팅 된 Core OPC UA 스택 및 라이브러리 (클라이언트, 서버, 구성, 복잡한 유형 및 GDS 어셈블리).
- 참조 샘플 서버 및 클라이언트.
- X.509 클라이언트 및 서버 인증에 대한 인증서 지원.
- SHA-2 지원 (SHA512까지)은 보안 프로파일 Basic256SHA256, AES128SHA256RSAOAEP 및 AES256SHA256RSAPSS가 높은 보안 요구를 갖는 구성을위한 AES256SHA256RSAPS.
- 익명, 사용자 이름 및 X.509 인증서 사용자 인증.
- UA-TCP 및 HTTPS 전송 (클라이언트 및 서버).
- UA-TCP 전송 (클라이언트 및 서버)에 대한 리버스 연결.
- Global Discovery Server 및 서버 푸시 지원이 포함 된 Folder & OS-Level (x509store) 인증서 저장.
- 세션 및 구독.
- 샘플이있는 Pubsub 라이브러리.
OPC UA 1.05의 주요 기능 및 업데이트
- 보안 향상 : 암호화 및 인증 메커니즘 향상.
- CRL 지원 : Windows의 X509store에 대한 인증서 취소 목록 지원 추가.
- 성능 개선 : 이진 인코딩 및 디코딩이 빠르며 메모리 사용 및 대기 시간을 줄입니다.
- 역할 기반 관리 : 잘 알려진 롤러스 및 역할 기반 관리 관리에 대한 지원 WellnownRoles & RoleBasedUserManagement.
- 개선 된 로깅 :
ILogger
및 EventSource
사용한 강화 된 로깅.
1.04에서 1.05로 업그레이드 할 때 변경 및 헤드 업을 깨뜨립니다.
- 1.05 (예 : ECC 지원)를 완전히 준수하기 위해 몇 가지 기능이 여전히 누락되었지만 1.05 릴리스에서는 v1.04 인증이 여전히 가능합니다.
- 스레드 안전 및 잠금 : 보안 채널 작업에서 스레드 안전성 및 잠금 감소.
- 감사 및 편집 : 민감한 정보 감사 및 수정을위한 새로운 인터페이스.
1.05.374.70의 새로운
- Windows의 X509store에 대한 CRL 지원
1.05.373의 새로운
- 1.05 노드 셋
- 잘 알려진 론 및 역할 저자 관리에 대한 지원.
1.04.368의 새로운
-
ILogger
및 EventSource
로그인에 대한 지원 향상. - refactored
ICertificateStore
및 CertificateStoreType
인터페이스가 포함 된 사용자 정의 인증서 저장 지원. - 전송 서식에 대한 클라이언트 및 서버 지원.
- 참조 서버에서 컨테이너 지원을 사용하는 방법.
샘플 및 너겟 패키지
- .NET Core 용 OPC UA 콘솔 참조 서버. 최신 빌드의 Linux 컨테이너는 여기에서 제공됩니다. 컨테이너 지원도 참조하십시오.
- OPC UA 참조 서버는 OPC Foundation Certification Test Lab을 통한 규정 준수 인증을 받았습니다. 인증 프로세스가 CTT (Compliance Test Tool)를 사용하여 준수를 위해 테스트 및 검증 된 이후 수정 및 향상. 모든 릴리스는 관리자의 최신 공식 규정 준수 테스트 도구를 준수하도록 확인됩니다.
- .NET Core 및 .NET Framework 용 OPC UA Console Reference 게시자 및 콘솔 참조 가입자.
- Core, Client, Server 및 Configuration Libraries의 공식 OPC UA Nuget 패키지는 .NET 프로젝트에 통합 할 수 있습니다. 참고 : 패키지는 클라이언트 또는 서버 만 필요한 프로젝트의 종속성을 줄이기 위해 코어, 클라이언트 및 서버 패키지로 분할되었습니다. HTTPS 바인딩은 이제 별도의 선택적 패키지입니다.
- 미리보기 Nuget 피드는 Azure DevOps에서 제공됩니다.
프로젝트 정보
일반 프로젝트 정보
상태 빌드 상태
코드 품질
시작하기
.NET 표준에 필요한 모든 도구에는 .NET 핵심 도구가 제공됩니다. 필요한 것에 대해 .NET Core를 시작하십시오.
Windows의 Visual Studio에서 참조 샘플을 빌드하고 실행하는 방법
참고 : .NET Core 2.1은 수명의 끝이므로
- VS 2017은 .NET 4.8에 대한 지원 만 제한적입니다.
- VS 2019는 .NET Core 3.1이 수명이 끝났기 때문에 .NET 4.8에 대한 지원이 제한되어 있습니다.
- VS 2022는 .NET 6.0 (LTS) 및 .NET 8.0 (LTS)을 포함한 현재 지원되는 버전입니다.
- Visual Studio를 사용하여 UA Reference.sln 솔루션 파일을 엽니 다.
- 솔루션 탐색기에서 프로젝트를 선택하고
Startup Project
로 마우스 오른쪽 버튼을 클릭하여 설정하십시오. -
F5
를 눌러 샘플을 빌드하고 실행하십시오.
Windows, Linux 및 iOS에서 콘솔 샘플을 빌드 및 실행하는 방법
이 섹션에서는 ConsolereFerenceServer 샘플 응용 프로그램을 실행하는 방법에 대해 설명합니다.
이 기사의 지침에 따라 플랫폼의 DotNet 명령 줄 환경을 설정하십시오. 현재 .NET Core SDK 3.1은 Visual Studio 2019에 필요하며 Visual Studio 2022에는 .NET SDK 6.0이 필요합니다.
전제 조건
-
dotnet
명령을 사용할 수있게되면 리포지토리의 로컬 사본의 루트 폴더로 이동하여 dotnet restore 'UA Reference.sln'
실행하십시오. 이 명령은 Nuget으로 호출하여 종속성의 트리를 복원합니다.
서버를 시작하십시오
- 명령 프롬프트를 엽니 다.
- 폴더 응용 프로그램/consoleReferenceserver 로 이동하십시오.
- 서버 샘플 유형
dotnet run --project ConsoleReferenceServer.csproj -a
실행하십시오.- 이제 서버가 실행 중이며 연결을 기다리고 있습니다.
발언
샘플 응용 프로그램에 대한 자체 서명 인증서
OPC UA에 필요한 모든 신청서는 디렉토리 또는 OS 수준 인증서 저장소에서 각 응용 프로그램의 첫 번째 시작시 작성되며 매장에서 삭제 될 때까지 사용 중입니다. 인증서 및 상점에 대한 자세한 내용은 인증서를 읽으십시오.
로컬 발견 서버
기본적으로 모든 샘플 응용 프로그램은 LDS (Local Discovery Server)에 등록하도록 구성됩니다. Windows 용 LDS의 참조 구현은 여기에서 다운로드 할 수 있습니다. LDS로 신뢰를 설정하려면 인증서를 교환해야합니다. 그렇지 않으면 등록이 실패합니다.
기여
우리는이 프로젝트에 대한 지역 사회 참여와 기여를 강력히 권장합니다. 먼저 저장소를 포크하고 변경 사항을 저지르십시오. 변경 사항에 만족하면 '풀 요청'을 생성 할 수 있습니다.
귀하는 귀하의 변경 사항을 수락하기 전에 기고자 라이센스 계약에 동의해야합니다. 풀 요청을 수행 할 때 CLA 및 "I EVER"버튼이 자동으로 표시됩니다. 여기에서 CLA를 미리 볼 수 있습니다.