userver: userver/server/handlers/auth/digest/auth_checker_settings.hpp Source File
⚠️ This is the documentation for an old userver version. Click here to switch to the latest version.
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages Concepts
auth_checker_settings.hpp
1#pragma once
2
3/// @file userver/server/handlers/auth/digest/digest_checker_settings.hpp
4/// @brief @copybrief server::handlers::auth::digest::AuthCheckerSettings
5
6#include <chrono>
7#include <optional>
8#include <string>
9#include <vector>
10
11USERVER_NAMESPACE_BEGIN
12
13namespace server::handlers::auth::digest {
14
15/// @brief Struct of directives for digest authentication server settings per
16/// RFC 2617
18 /// Algorithm for hashing `nonce` from
19 /// https://datatracker.ietf.org/doc/html/rfc2617#section-3.2.1
20 std::string algorithm;
21 /// `domains` from https://datatracker.ietf.org/doc/html/rfc2617#section-3.2.1
23 /// `qop-options` from
24 /// https://datatracker.ietf.org/doc/html/rfc2617#section-3.2.1
26 /// If set, the Proxy prefix is inserted into the header of responses
27 bool is_proxy{false};
28 /// Enable sessions and session algorithms (MD5-sess, SHA-256-sess and
29 /// SHA-512-256-sess)
30 bool is_session{false};
31 /// ttl for `nonce` from
32 /// https://datatracker.ietf.org/doc/html/rfc2617#section-3.2.1
33 std::chrono::milliseconds nonce_ttl{0};
34};
35
36} // namespace server::handlers::auth::digest
37
38USERVER_NAMESPACE_END