UA Server SDK C++ Bundle  1.3.3.206
 All Data Structures Namespaces Functions Variables Typedefs Enumerations Enumerator Groups Pages
UaClientSdk::SessionSecurityInfo Class Reference

The SessionSecurityInfo class contains the security related session settings for connect. More...

#include <uaclientsdk.h>

Inherits UaClientSdk::ClientSecurityInfo.

Public Member Functions

 SessionSecurityInfo ()
 Constructs a session security info object with initial values for this class and the base class ClientSecurityInfo. More...
 
 ~SessionSecurityInfo ()
 Destroys the session security info object.
 
 SessionSecurityInfo (const SessionSecurityInfo &)
 Constructs a copy of the passed session security info object.
 
SessionSecurityInfooperator= (const SessionSecurityInfo &)
 Assigns a copy of the passed session security info to this object and returns a reference to this object. More...
 
UaStatusCode loadServerCertificateOpenSSL (const UaString &sServerCertificateFile)
 Load server certificate using the file based OpenSSL certificate store. More...
 
UaStatusCode saveServerCertificate (UaString &sCertificateName)
 Save certificate in store. More...
 
UaStatus verifyServerCertificate ()
 This function verifies if the server certificate is trusted by the client.
 
void setAnonymousUserIdentity ()
 This function is setting the user identity type used for connection establishment to Anonymous.
 
void setUserPasswordUserIdentity (const UaString &userName, const UaString &password)
 This function is setting the user identity type used for connection establishment to UserPassword. More...
 
void setCertificateUserIdentity (const UaByteString &userCertificate, const UaByteString &userPrivateKey)
 This function is setting the user identity type used for connection establishment to Certificate. More...
 
const UaUserIdentityTokenpUserIdentityToken () const
 Returns the user identity token configured for this setting object. More...
 
const UaByteString userPrivateKey () const
 Return the user private key if the user token type Certificate is configured.
 
- Public Member Functions inherited from UaClientSdk::ClientSecurityInfo
 ClientSecurityInfo ()
 Constructs a client security info object with initial values
sSecurityPolicy = OpcUa_SecurityPolicy_None
messageSecurityMode = OpcUa_MessageSecurityMode_None
No PKI provider.
 
 ~ClientSecurityInfo ()
 Destroys the client security info object.
 
UaStatusCode initializePkiProviderOpenSSL (const UaString &sCertificateRevocationListLocation, const UaString &sCertificateTrustListLocation)
 Initialize the PKI provider to use the file based OpenSSL certificate store. More...
 
UaStatusCode loadClientCertificateOpenSSL (const UaString &sClientCertificateFile, const UaString &sClientPrivateKeyFile)
 Load client certificate and client private key using the file based OpenSSL certificate store. More...
 
OpcUa_Void * pkiCfg ()
 Internally used function to provide the PKI provider for the UA Stack.
 

Data Fields

UaByteString serverCertificate
 Server certificate (public key). More...
 
OpcUa_Boolean doServerCertificateVerify
 Indicates if the client SDK must verify the server certificate or if this was done already by the application. More...
 
- Data Fields inherited from UaClientSdk::ClientSecurityInfo
UaString sSecurityPolicy
 The name of the security policy used for the connection. More...
 
OpcUa_MessageSecurityMode messageSecurityMode
 The message security mode used for the connection. More...
 
UaByteString clientCertificate
 Client certificate (public key)
 
UaByteString clientPrivateKey
 Client private key.
 

Detailed Description

The SessionSecurityInfo class contains the security related session settings for connect.

Constructor & Destructor Documentation

UaClientSdk::SessionSecurityInfo::SessionSecurityInfo ( )

Constructs a session security info object with initial values for this class and the base class ClientSecurityInfo.

The user identity token type is set to Anonymous

Member Function Documentation

UaStatusCode UaClientSdk::SessionSecurityInfo::loadServerCertificateOpenSSL ( const UaString sServerCertificate)

Load server certificate using the file based OpenSSL certificate store.

Returns
Status code.
Parameters
[in]sServerCertificatePath and file name of the server certificate (public key)
SessionSecurityInfo & UaClientSdk::SessionSecurityInfo::operator= ( const SessionSecurityInfo other)

Assigns a copy of the passed session security info to this object and returns a reference to this object.

const UaUserIdentityToken * UaClientSdk::SessionSecurityInfo::pUserIdentityToken ( ) const

Returns the user identity token configured for this setting object.

The returned object can be an instance of

UaStatusCode UaClientSdk::SessionSecurityInfo::saveServerCertificate ( UaString sCertificateName)

Save certificate in store.

Returns
Status code.
Parameters
[out]sCertificateNameName of the certificate that can be used to load the certificate from the same store.
void UaClientSdk::SessionSecurityInfo::setCertificateUserIdentity ( const UaByteString userCertificate,
const UaByteString userPrivateKey 
)

This function is setting the user identity type used for connection establishment to Certificate.

Parameters
[in]userCertificateUser certificate for the Certificate user identity type
[in]userPrivateKeyUser private key for the Certificate user identity type
void UaClientSdk::SessionSecurityInfo::setUserPasswordUserIdentity ( const UaString userName,
const UaString password 
)

This function is setting the user identity type used for connection establishment to UserPassword.

Parameters
[in]userNameUser name for the user password user identity type
[in]passwordPassword for the user password user identity type

Field Documentation

OpcUa_Boolean UaClientSdk::SessionSecurityInfo::doServerCertificateVerify

Indicates if the client SDK must verify the server certificate or if this was done already by the application.

The default value is True to force the client SDK to verify the server certificate before establishing the connection.

UaByteString UaClientSdk::SessionSecurityInfo::serverCertificate

Server certificate (public key).


The documentation for this class was generated from the following files: