userver
C++ Async Framework
Loading...
Searching...
No Matches
interface.hpp
Go to the documentation of this file.
1
#
pragma
once
2
3
/// @file userver/s3api/authenticators/interface.hpp
4
/// @brief @copybrief s3api::authenticators::Authenticator
5
6
#
include
<
memory
>
7
#
include
<
string
>
8
#
include
<
unordered_map
>
9
10
USERVER_NAMESPACE_BEGIN
11
12
namespace
s3api {
13
14
struct
Request
;
15
16
namespace
authenticators
{
17
18
/// @ingroup userver_base_classes
19
///
20
/// @brief Base class for all authenticators - classes that sign the request with auth data
21
struct
Authenticator
{
22
virtual
std::unordered_map<std::string, std::string> Auth(
const
Request& request)
const
= 0;
23
virtual
std::unordered_map<std::string, std::string> Sign(
const
Request& request, time_t expires)
const
= 0;
24
virtual
~Authenticator() =
default
;
25
};
26
27
using
AuthenticatorPtr = std::shared_ptr<
Authenticator
>;
28
29
}
// namespace authenticators
30
}
// namespace s3api
31
32
USERVER_NAMESPACE_END
userver
s3api
authenticators
interface.hpp
Generated on Tue Nov 19 2024 11:25:28 for userver by
Doxygen
1.10.0