8#include "Arp/Base/Rsc/Commons/Rsc.hpp"
9#include "Arp/Base/Rsc/Commons/IRscService.hpp"
10#include "Arp/Base/Commons/Security/SecurityToken.hpp"
11#include "Arp/Base/Rsc/Commons/RscSecureString.hxx"
12#include "Arp/Base/Rsc/Commons/RscString.hxx"
13#include "Arp/System/Security/Services/AuthenticationError.hpp"
20using namespace Arp::Base::Rsc::Commons;
38 using Ptr = std::shared_ptr<IPasswordAuthenticationService>;
This class is used for authorization of arbitrary operations.
Definition: SecurityToken.hpp:18
This is the base interface of all Rsc services.
Definition: IRscService.hpp:22
std::shared_ptr< IRscService > Ptr
The shared_ptr type of IRscService.
Definition: IRscService.hpp:25
Specialized implementation of RscString for secure context.
Definition: RscSecureString.hxx:16
Contains a static string with string lentgh up to N characters. The string shall be null terminated.
Definition: RscString.hxx:24
Interface for service proxy factories to create service proxies used by RSC clients.
Definition: IRscServiceProxyFactory.hpp:22
This service allows a Remoting client to authenticate a user to the gateway (device) and by this star...
Definition: IPasswordAuthenticationService.hpp:36
IPasswordAuthenticationService(void)=default
Constructs an IPasswordAuthenticationService instance.
virtual AuthenticationError CreateSession(const RscString< 64 > &username, const RscSecureString< 128 > &password, SecurityToken &securityToken, int32 &penaltyDelayMillis)=0
Starts a security context for a particular user or role known at the device.
virtual void CloseSession(SecurityToken securityToken)=0
Terminates a security session which was started at the gateway (device) by a former call to Arp....
std::int32_t int32
The Arp integer type of 4 byte size.
Definition: PrimitiveTypes.hpp:35
Namepsace for services used in the RSC security implementation
AuthenticationError
Defines values indicating success or failure of an attempt to create a security session.
Definition: AuthenticationError.hpp:20