PLCnext API Documentation 25.0.2.69
IRscAuthorizator.hpp
1
2//
3// Copyright Phoenix Contact GmbH & Co. KG
4//
6#pragma once
8#include "Arp/Base/Commons/Security/SecurityToken.hpp"
9
10namespace Arp::Base::Rsc::Commons::Services
11{
12
13// type imports
15
20class ARP_EXPORT IRscAuthorizator
21{
22public: // canonical construction/destruction/assignment
24 IRscAuthorizator(void) = default;
26 IRscAuthorizator(const IRscAuthorizator& arg) = delete;
29 IRscAuthorizator(IRscAuthorizator&& arg)noexcept = default;
35 IRscAuthorizator& operator=(IRscAuthorizator&& arg)noexcept = default;
37 virtual ~IRscAuthorizator() = default;
38
39public: // operations
46 virtual bool IsServiceCallAllowed(const SecurityToken& securityToken, const String& objectName) = 0;
47};
48
49} // end of namespace Arp::Base::Rsc::Commons::Services
This class is used for authorization of arbitrary operations.
Definition: SecurityToken.hpp:18
This class represents the Arp String. The implementation is based on std::string.
Definition: String.hpp:39
This interface is used to authorize a Rsc service call.
Definition: IRscAuthorizator.hpp:21
IRscAuthorizator & operator=(const IRscAuthorizator &)=delete
The deleted assignment operator.
IRscAuthorizator(const IRscAuthorizator &arg)=delete
The deleted copy constructor.
IRscAuthorizator(void)=default
The default constructor.
virtual ~IRscAuthorizator()=default
The virtual destructor.
virtual bool IsServiceCallAllowed(const SecurityToken &securityToken, const String &objectName)=0
This operation checks if a service call is well authorized.
IRscAuthorizator(IRscAuthorizator &&arg) noexcept=default
The default move constructor.
IRscAuthorizator & operator=(IRscAuthorizator &&arg) noexcept=default
The default move-assignment operator.