OPC Studio User's Guide and Reference
ProtectOrUnprotectOwnCertificateOrCertificatePack Method (IEasyUAClientServerApplication)



OpcLabs.EasyOpcUA Assembly > OpcLabs.EasyOpc.UA.Application Namespace > IEasyUAClientServerApplication Interface : ProtectOrUnprotectOwnCertificateOrCertificatePack Method
The sub-id of the certificate. Normally an empty string.

The value of this parameter cannot be null (Nothing in Visual Basic).

The certificate type Id, or null (Nothing in Visual Basic) for certificate pack.

Because the OpcLabs.EasyOpc.UA.AddressSpace.UANodeId has an implicit conversion from System.String, in languages that support implicit conversion operators (such as C# or VB.NET), you can simply use a string (representing the expanded text of the nodeId) in place of this parameter, and the corresponding OPC UA node Id will be constructed automatically. When the implicit conversion operators are not supported (such as with Python.NET), you can use the UANodeId Constructor(String) constructor instead.

The value of this parameter can be null (Nothing in Visual Basic).

Empty string to unprotected the certificate, or a non-empty password to use for protection of the certificate's private key.

The value of this parameter cannot be null (Nothing in Visual Basic).

Protects or unprotects the private key of the given certificate, or certificate pack.
Syntax
'Declaration
 
Function ProtectOrUnprotectOwnCertificateOrCertificatePack( _
   ByVal certificateSubId As String, _
   ByVal certificateTypeId As UANodeId, _
   ByVal newPrivateKeyPassword As String _
) As Boolean
'Usage
 
Dim instance As IEasyUAClientServerApplication
Dim certificateSubId As String
Dim certificateTypeId As UANodeId
Dim newPrivateKeyPassword As String
Dim value As Boolean
 
value = instance.ProtectOrUnprotectOwnCertificateOrCertificatePack(certificateSubId, certificateTypeId, newPrivateKeyPassword)
bool ProtectOrUnprotectOwnCertificateOrCertificatePack( 
   string certificateSubId,
   UANodeId certificateTypeId,
   string newPrivateKeyPassword
)
bool ProtectOrUnprotectOwnCertificateOrCertificatePack( 
   String^ certificateSubId,
   UANodeId^ certificateTypeId,
   String^ newPrivateKeyPassword
) 

Parameters

certificateSubId
The sub-id of the certificate. Normally an empty string.

The value of this parameter cannot be null (Nothing in Visual Basic).

certificateTypeId
The certificate type Id, or null (Nothing in Visual Basic) for certificate pack.

Because the OpcLabs.EasyOpc.UA.AddressSpace.UANodeId has an implicit conversion from System.String, in languages that support implicit conversion operators (such as C# or VB.NET), you can simply use a string (representing the expanded text of the nodeId) in place of this parameter, and the corresponding OPC UA node Id will be constructed automatically. When the implicit conversion operators are not supported (such as with Python.NET), you can use the UANodeId Constructor(String) constructor instead.

The value of this parameter can be null (Nothing in Visual Basic).

newPrivateKeyPassword
Empty string to unprotected the certificate, or a non-empty password to use for protection of the certificate's private key.

The value of this parameter cannot be null (Nothing in Visual Basic).

Return Value

Returns true when the resulting state of the certificate is protected. Returns false otherwise.
Exceptions
ExceptionDescription

A null reference (Nothing in Visual Basic) is passed to a method that does not accept it as a valid argument.

This is a usage error, i.e. it will never occur (the exception will not be thrown) in a correctly written program. Your code should not catch this exception.

An operation was performed on a disposed object.

The OPC UA operation has failed. This operation exception in uniformly used to allow common handling of various kinds of errors. The System.Exception.InnerException always contains information about the actual error cause.

This is an operation error that depends on factors external to your program, and thus cannot be always avoided. Your code must handle it appropriately.

Remarks

When certificate pack is used, this method operates on certificates with certificate type Ids given by PackCertificateTypeIds.

If the specified certificate type Id is Null, the default certificate type Id from DefaultCertificateTypeId is used instead.

A preexisting private key password, if any, must be correctly configured in the application, for this operation to succeed.

If you only need to set or remove the password used to access the certificate private key in subsequent operations, without affecting the certificate, use SetPrivateKeyPassword or RemovePrivateKeyPassword instead.

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