userver: userver/server/handlers/auth/digest/auth_checker_settings.hpp Source File
Loading...
Searching...
No Matches
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