PLCnext API Documentation 23.0.2.9
IPasswordAuthenticationService.hpp
1
2//
3// Copyright PHOENIX CONTACT Electronics GmbH
4//
6#pragma once
8#include "Arp/System/Rsc/Services/IRscService.hpp"
9#include "Arp/System/Rsc/Services/RscString.hxx"
10#include "Arp/System/Rsc/Services/SecureString.hxx"
11#include "Arp/System/Security/SecurityToken.hpp"
12#include "Arp/System/Security/Services/AuthenticationError.hpp"
13#include "Arp/System/Security/Services/PasswordAuthenticationServiceProxyFactory.hpp"
14
15// DO NOT MODIFY THIS FILE, THIS FILE IS AUTOGENERATED BY IPasswordAuthenticationService.cs
16
17namespace Arp { namespace System { namespace Security { namespace Services
18{
19
20using namespace Arp;
21using namespace Arp::System::Rsc::Services;
22
35{
36public: // typedefs
37 using Ptr = std::shared_ptr<IPasswordAuthenticationService>;
38
39public: // construction/destruction
42
43public: // static policy operation
44 static IRscServiceProxyFactory& GetProxyFactory(void);
45
46public: // abstract operations
107 virtual AuthenticationError CreateSession(const RscString<64>& username, const SecureString<128>& password, SecurityToken& securityToken, int32& penaltyDelayMillis) = 0;
108
115 virtual void CloseSession(SecurityToken securityToken) = 0;
116};
117
119// inline methods of class IPasswordAuthenticationService
120inline IRscServiceProxyFactory& IPasswordAuthenticationService::GetProxyFactory()
121{
122 return PasswordAuthenticationServiceProxyFactory::GetInstance();
123}
124
125}}}} // end of namespace Arp::System::Security::Services
Base interface for all Rsc service interface.
Definition: IRscService.hpp:19
Contains a static string with string lentgh up to N characters. The string has to be null terminated.
Definition: RscString.hxx:21
Specialized version of RscString for security context. Not implemented in this version....
Definition: SecureString.hxx:19
Definition: SecurityToken.hpp:12
This service allows a Remoting client to authenticate a user to the gateway (device) and by this star...
Definition: IPasswordAuthenticationService.hpp:35
virtual AuthenticationError CreateSession(const RscString< 64 > &username, const SecureString< 128 > &password, SecurityToken &securityToken, int32 &penaltyDelayMillis)=0
Starts a security context for a particular user or role known at the device.
IPasswordAuthenticationService(void)=default
Constructs an IPasswordAuthenticationService instance.
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:37
@ System
System components used by the System, Device, Plc or Io domains.
Namespace for classes and interfaces for the Remote Service Call implementation
AuthenticationError
Defines values indicating success or failure of an attempt to create a security session.
Definition: AuthenticationError.hpp:20
Root namespace for the PLCnext API