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
<
ctime
>
7
#
include
<
memory
>
8
#
include
<
string
>
9
#
include
<
unordered_map
>
10
11
USERVER_NAMESPACE_BEGIN
12
13
namespace
s3api {
14
15
struct
Request
;
16
17
namespace
authenticators
{
18
19
/// @ingroup userver_base_classes
20
///
21
/// @brief Base class for all authenticators - classes that sign the request with auth data
22
struct
Authenticator
{
23
virtual
std::unordered_map<std::string, std::string> Auth(
const
Request
& request)
const
= 0;
24
virtual
std::unordered_map<std::string, std::string> Sign(
const
Request
& request, time_t expires)
const
= 0;
25
virtual
~Authenticator() =
default
;
26
};
27
28
using
AuthenticatorPtr = std::shared_ptr<
Authenticator
>;
29
30
}
// namespace authenticators
31
}
// namespace s3api
32
33
USERVER_NAMESPACE_END
userver
s3api
authenticators
interface.hpp
Generated on Tue Jan 27 2026 16:43:49 for userver by
Doxygen
1.13.2