Skip to main content

OPC UA

Authentication & Advanced Configuration

You can configure authentication and advanced OPC UA connection settings under
Connection → Settings (⚙).

Below is an example of a full configuration including all available fields (updated for version 2.2.2):

Example

{
"ArraySearch": true,
"DataTypeCheck": true,
"PublishInterval": 1000,
"SampleInterval": null,
"MaxNotificationsPerPublish": 65000,
"MaxMonitoredItemsPerSubscription": 1000,
"MonitoredItemQueueSize": 65000,
"AuthMode": "Basic",
"SecurityPolicy": "Sign",
"SecurityAlgorithm": "Auto",
"Username": "john.doe",
"Password": "secretpassword",
"UserCertificate": "/path/to/user_certificate.pem",
"ApplicationCertificate": "/path/to/application_certificate.pem",
"DisableServerCertificateCheck": false,
"ReconnectIfSubscriptionStopsPublishing": true
}

Properties

Below is a complete overview of all supported custom configuration properties.


General Behavior

ArraySearch (bool)

Default: true
Enables searching inside arrays to find OPC UA values.


DataTypeCheck (bool)

Default: true
Validates that the data type returned by the server matches the expected type.


Timing

PublishInterval (int, ms)

Default: 1000
Determines how frequently publish responses are sent by the OPC UA server.


SampleInterval (int?, ms)

Default: null
Sampling interval for monitored items.

Behavior:

  • null: use the variable’s own timer interval, or 10 ms if undefined
  • a numeric value: enforces a sampling interval
  • can be overridden per variable

Subscription Management

MaxNotificationsPerPublish (int)

Default: 65000
Maximum number of notifications included in a single publish response.


MaxMonitoredItemsPerSubscription (int)

Default: 1000
Maximum number of monitored items allowed in a subscription.
Setting this too high may result in:

“The request could not be processed because it specified too many operations.”


MonitoredItemQueueSize (int)

Default: 65000
Maximum queue size for each monitored item.
Higher values reduce data loss during bursts but increase memory usage.


Authentication & Security

AuthMode (AuthMethod)

Default: None
Defines how the client authenticates.

Possible values:

  • None
  • Basic
  • Certificate

Username (string)

Used when AuthMode = Basic.


Password (string)

Used when AuthMode = Basic.


UserCertificate (string) — New in 2.2.2

Path to the user identity certificate used when:

AuthMode = Certificate

This replaces the older CertPath property and should be used for all new configurations.


CertPath (string) — Deprecated

Legacy property used for certificate-based authentication.
Replaced by UserCertificate but still supported for backward compatibility.


ApplicationCertificate (string)

Path to the application certificate, used to identify the OPC UA client application.
This is not the same as the user certificate.

Use this when the OPC UA server requires the client application to present a trusted certificate. If not defined, a self-signed certificate will be generated and stored locally.


SecurityPolicy (OpcSecurityMode)

Default: None

Possible values:

  • None
  • Sign
  • SignAndEncrypt

Defines the security mode for OPC UA communication.


SecurityAlgorithm (OpcSecurityAlgorithm)

Default: Auto

Possible values:

  • Auto
  • Custom
  • None
  • Basic128Rsa15
  • Basic256
  • Basic256Sha256
  • Https

Determines the cryptographic algorithm set used alongside the SecurityPolicy.


DisableServerCertificateCheck (bool)

Default: false

If enabled, the OPC UA client does not validate the server certificate.

Warning:
This disables all trust checks. A rogue or untrusted server will be accepted.
Use only in controlled testing environments.


Reliability

ReconnectIfSubscriptionStopsPublishing (bool)

Default: true
If a subscription stops publishing and cannot restart, the client will perform a full reconnect to restore communication.


Collect Settings

OPC UA is notification-based.
We support reading:

  • Primitive variables
  • Arrays
  • Structs
  • Individual struct members

Each variable is mapped using its OPC UA nodeId.
You can view these IDs on the OPC UA server or using any OPC UA client.

TypeMapping ExampleOutput Database Field Names
Single variablens=6;s=::Test_OPC:Frame_OPC_Mach_1._02_Machine_RunningVariable name
Full arrayns=4;s=OpcUa.arArrayArrayVarname[0], Varname[x]
Full structns=4;s=OpcUa.stStructStructVarname_Element1, Varname_ElementX
Single struct elementns=4;s=OpcUa.stStructStruct.elementNameVariable name