QuickOPC User's Guide and Reference
InstanceCertificateSubject Property (IUAReadOnlyApplicationManifest)



OpcLabs.EasyOpcUA Assembly > OpcLabs.EasyOpc.UA.Administration Namespace > IUAReadOnlyApplicationManifest Interface : InstanceCertificateSubject Property

OBSOLETE: It is strongly recommended to use the OpcLabs.EasyOpc.UA.Discovery.IUAReadOnlyApplicationElement.ApplicationName and other such properties instead.

The subject name of the client application certificate. When empty, the component will make a subject name automatically, and it will be the same as the application name.

Syntax
'Declaration
 
<NotNullAttribute()>
ReadOnly Property InstanceCertificateSubject As String
'Usage
 
Dim instance As IUAReadOnlyApplicationManifest
Dim value As String
 
value = instance.InstanceCertificateSubject
[NotNull()]
string InstanceCertificateSubject {get;}
[NotNull()]
property String^ InstanceCertificateSubject {
   String^ get();
}
Remarks

The subject name is used when looking for the certificate.

The automatically created name is based on the description (title) of the application assembly.

When the certificate subject differs from the application name, problems such as multiple creation of instance certificates may arise. WE THEREFORE STRONGLY RECOMMEND THAT YOU KEEP THIS PARAMETER EMPTY.

In order to obtain or modify this parameter, access the OpcLabs.EasyOpc.UA.Engine.UAClientServerApplicationParameters.ApplicationManifest property of OpcLabs.EasyOpc.UA.Application.EasyUAApplicationCore.ApplicationParameters property of static EasyUAApplication.Instance.

This is the distinguished name of an X509 certificate according to the Abstract Syntax Notation One (ASN.1) syntax.

The subject field identifies the entity associated with the public key stored in the subject public key field. The subject name MAY be carried in the subject field and/or the subjectAltName extension. Where it is non-empty, the subject field MUST contain an X.500 distinguished name (DN). Name is defined by the following ASN.1 structures:

             Name ::= CHOICE {RDNSequence }
             RDNSequence ::= SEQUENCE OF RelativeDistinguishedName
             RelativeDistinguishedName ::= SET OF AttributeTypeAndValue
             AttributeTypeAndValue ::= SEQUENCE {type     AttributeType, value    AttributeValue }
             AttributeType ::= OBJECT IDENTIFIER
             AttributeValue ::= ANY DEFINED BY AttributeType
             DirectoryString ::= CHOICE {
               teletexString           TeletexString (SIZE (1..MAX)),
               printableString         PrintableString (SIZE (1..MAX)),
               universalString         UniversalString (SIZE (1..MAX)),
               utf8String              UTF8String (SIZE (1..MAX)),
               bmpString               BMPString (SIZE (1..MAX)) }
             

The Name describes a hierarchical name composed of attributes, such as country name, and corresponding values, such as US. The type of the component AttributeValue is determined by the AttributeType; in general it will be a DirectoryString.

String X.500 AttributeType:

This notation is designed to be convenient for common forms of name. This section gives a few examples of distinguished names written using this notation. First is a name containing three relative distinguished names (RDNs): CN=Steve Kille,O=Isode Limited,C=GB

RFC 3280 Internet X.509 Public Key Infrastructure, April 2002 RFC 2253 LADPv3 Distinguished Names, December 1997

Requirements

Target Platforms: .NET Framework: Windows 10 (selected versions), Windows 11 (selected versions), Windows Server 2016, Windows Server 2022; .NET: Linux, macOS, Microsoft Windows

See Also