PLCnext API Documentation  21.9.0.40
IAuthorizationInfoService.hpp
1 //
3 // Copyright PHOENIX CONTACT Electronics GmbH
4 //
6 #pragma once
7 #include "Arp/System/Core/Arp.h"
8 #include "Arp/System/Rsc/Services/IRscService.hpp"
9 #include "AuthorizationInfoServiceProxyFactory.hpp"
10 #include "Arp/System/Rsc/Services/RscString.hxx"
11 #include "Arp/System/Security/SecurityToken.hpp"
12 #include "Operation.hpp"
13 
14 // DO NOT MODIFY THIS FILE, THIS FILE IS AUTOGENERATED BY IAuthorizationInfoService.cs
15 
16 namespace Arp { namespace System { namespace Um { namespace Services
17 {
18 
19 using namespace Arp;
20 using namespace Arp::System::Rsc::Services;
21 
27 {
28 public: // typedefs
29  using Ptr = std::shared_ptr<IAuthorizationInfoService>;
30 
31 public: // construction/destruction
33  IAuthorizationInfoService(void) = default;
34 
35 public: // static policy operation
36  static IRscServiceProxyFactory& GetProxyFactory(void);
37 
38 public: // abstract operations
51  virtual boolean HasPermissionFor(const RscString<512>& entity, Operation operation, SecurityToken securityToken) = 0;
52 };
53 
55 // inline methods of class IAuthorizationInfoService
56 inline IRscServiceProxyFactory& IAuthorizationInfoService::GetProxyFactory()
57 {
58  return AuthorizationInfoServiceProxyFactory::GetInstance();
59 }
60 
61 }}}} // end of namespace Arp::System::Um::Services
Definition: SecurityToken.hpp:11
Namespace for classes and interfaces for the Remote Service Call implementation
Definition: IRscReadEnumerator.hxx:9
Root namespace for the PLCnext API
Base interface for all Rsc service interface.
Definition: IRscService.hpp:18
This service checks if a session has particular permissions for protected entity operations.
Definition: IAuthorizationInfoService.hpp:26
System components used by the System, Device, Plc or Io domains.