OPCFoundation.NetStandard.Opc.Ua.Gds.Client 2.0.2

Prefix Reserved
dotnet add package OPCFoundation.NetStandard.Opc.Ua.Gds.Client --version 2.0.2
                    
NuGet\Install-Package OPCFoundation.NetStandard.Opc.Ua.Gds.Client -Version 2.0.2
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="OPCFoundation.NetStandard.Opc.Ua.Gds.Client" Version="2.0.2" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="OPCFoundation.NetStandard.Opc.Ua.Gds.Client" Version="2.0.2" />
                    
Directory.Packages.props
<PackageReference Include="OPCFoundation.NetStandard.Opc.Ua.Gds.Client" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add OPCFoundation.NetStandard.Opc.Ua.Gds.Client --version 2.0.2
                    
#r "nuget: OPCFoundation.NetStandard.Opc.Ua.Gds.Client, 2.0.2"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package OPCFoundation.NetStandard.Opc.Ua.Gds.Client@2.0.2
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=OPCFoundation.NetStandard.Opc.Ua.Gds.Client&version=2.0.2
                    
Install as a Cake Addin
#tool nuget:?package=OPCFoundation.NetStandard.Opc.Ua.Gds.Client&version=2.0.2
                    
Install as a Cake Tool

OPC UA .NET Standard — GDS client

OPCFoundation.NetStandard.Opc.Ua.Gds.Client is the client-side library for the OPC UA Global Discovery Server (GDS) — OPC 10000-12 (Part 12). It implements the GDS service-call surface (RegisterApplication, FindApplications, GetCertificateGroups, StartSigningRequest, FinishRequest, GetTrustList, …) on top of Opc.Ua.Client, with the certificate-push management flows for servers that delegate PKI to a GDS.

Overview

Reference this package from any application or tool that needs to talk to a GDS — typically a provisioning utility, a certificate authority bridge, or a server that uses GDS-driven push management.

ServerPushConfigurationClient.CaptureAsync runs the existing certificate and TrustList operations on an already authorized encrypted session generation. It does not reconnect, change user credentials, or close the caller's connection. AddGdsClient registers a Func<ISession, CancellationToken, ValueTask<ServerPushConfigurationClient>> capture factory alongside the existing connection-owning client. Dispose each captured client asynchronously after its operations.

Captured TrustList reads and failed writes close remote handles with a separate five-second cleanup token, even after transfer cancellation. If transfer and cleanup both fail, the operation reports both exceptions. A failed CloseAndUpdate response does not establish whether the server committed the update; reconcile its state before repeating the write.

For OPC 10000-21 registrar administration, OnboardingClient calls the standard DeviceRegistrarAdminType instance with specification-native ArrayOf<string> signed JSON ticket inputs and returns ArrayOf<StatusCode>. Register it through .AddGdsClient().AddOnboardingClient().

PullDcaWorkflow provides bounded identity selection, software-update gating, certificate requests, trust download and host-owned installation through generated proxies and a borrowed ManagedSession. Register the identity and credential providers before selecting .AddGdsClient().AddPullDcaWorkflow(). Transport failures retry only the original signing request within the shared finish-attempt budget. Exhaustion propagates the final error; authorization and certificate-validation errors are not retried.

An optional .AddPullDcaCertificateReceipts(namespaceUris, scope) registration retains received signing output in a host-selected ISecretStore, so a later trust-download or installation failure can resume without repeating an accepted FinishRequest. The built-in adapter requires one exclusive scope owner; restart durability depends on the selected store. It does not restore private keys or complete the remaining device lifecycle.

An explicit IPullDcaSigningRecoveryProvider enables Part 12 GetCertificates recovery when a repeated signing-request completion returns Bad_InvalidArgument. The provider must prove the retained request/key binding and reject stale assignments before output is retained or installed. Persistence alone cannot recover an accepted response lost before local publication. The sample does not yet supply the request evidence needed for this recovery path.

Target frameworks

net48, net8.0, net9.0, net10.0.

Additional documentation

See the main repository README and the GDS guide.

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 is compatible.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
.NET Framework net48 is compatible.  net481 was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (3)

Showing the top 3 NuGet packages that depend on OPCFoundation.NetStandard.Opc.Ua.Gds.Client:

Package Downloads
OPCFoundation.NetStandard.Opc.Ua

This package contains the OPC UA reference implementation and is targeting the .NET Standard Library.

OPCFoundation.NetStandard.Opc.Ua.MigrationAnalyzer

26 OPC UA analyzers (through UA0030, with gaps), code fixes, and a 1.5.378 API shim.

OPCFoundation.NetStandard.Opc.Ua.Mcp.Gds

Explicit, secret-safe MCP workflows for OPC UA GDS, certificates, credentials and onboarding.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
2.0.2 0 11/11/2026
2.0.1 12,915 10/12/2026
2.0.0 1,924 10/7/2026
2.0.0-preview.6 183 9/30/2026
2.0.0-preview.5 176 9/17/2026