PLCnext API Documentation 25.0.2.69
Public Types | Public Member Functions | Static Public Member Functions | List of all members
Arp::System::Commons::Services::Security::IDeviceIdentityValidatorService Class Referenceabstract

This service allows to validate device identities. More...

#include <IDeviceIdentityValidatorService.hpp>

Inheritance diagram for Arp::System::Commons::Services::Security::IDeviceIdentityValidatorService:
Inheritance graph

Public Types

using Ptr = std::shared_ptr< IDeviceIdentityValidatorService >
 
- Public Types inherited from Arp::Base::Rsc::Commons::IRscService
using Ptr = std::shared_ptr< IRscService >
 The shared_ptr type of IRscService.
 

Public Member Functions

 IDeviceIdentityValidatorService (void)=default
 Constructs an IDeviceIdentityValidatorService instance.
 
virtual IdentityValidationResult Validate (const RscString< 16384 > &pemTrustedCertificates, const RscString< 80 > &identityName)=0
 Performs the validation of a particular device identity. The identity is represented internally as a PLCnext IdentityStore, stored on the device, by an X509 certificate and a private key. The certificate must be signed by the certificate chain given as argument of this function. The validation process requires that the certificate can sign data; keyUsage must include signing and the identityStore must contain the private key to this certificate. More...
 
- Public Member Functions inherited from Arp::Base::Rsc::Commons::IRscService
 IRscService (void)=default
 The default constructor.
 
 IRscService (const IRscService &arg)=delete
 The deleted copy constructor. More...
 
 IRscService (IRscService &&arg) noexcept=default
 The default move constructor. More...
 
IRscServiceoperator= (const IRscService &arg)=delete
 The deleted assignment operator. More...
 
IRscServiceoperator= (IRscService &&arg) noexcept=default
 The default move-assignment operator. More...
 
virtual ~IRscService (void)=default
 Destructs this instance and frees all resources.
 

Static Public Member Functions

static IRscServiceProxyFactoryGetProxyFactory (void)
 
- Static Public Member Functions inherited from Arp::Base::Rsc::Commons::IRscService
static IRscServiceProxyFactoryGetProxyFactory (void)
 Returns a reference to service proxy factory to create a proxy instance of this service. More...
 

Detailed Description

This service allows to validate device identities.

This service is defined in library Arp.System.Commons.Services.

Realtime Usage: This API call does not have to be deterministic in runtime behaviour, so an asynchronous execution should be considered.

Member Function Documentation

◆ Validate()

virtual IdentityValidationResult Arp::System::Commons::Services::Security::IDeviceIdentityValidatorService::Validate ( const RscString< 16384 > &  pemTrustedCertificates,
const RscString< 80 > &  identityName 
)
pure virtual

Performs the validation of a particular device identity. The identity is represented internally as a PLCnext IdentityStore, stored on the device, by an X509 certificate and a private key. The certificate must be signed by the certificate chain given as argument of this function. The validation process requires that the certificate can sign data; keyUsage must include signing and the identityStore must contain the private key to this certificate.

Parameters
pemTrustedCertificatesList of PEM formatted certificates which are considered as trusted by the application.
identityNameName of the PLCnext IdentityStore containing the identity to verify.
Returns
The result of the validation. See Arp.System.Commons.Services.Security.IdentityValidationResult for infomation on the result

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