userver: server::handlers::auth::digest::AuthStandaloneCheckerBase Class Reference
⚠️ 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
server::handlers::auth::digest::AuthStandaloneCheckerBase Class Referenceabstract

#include <userver/server/handlers/auth/digest/standalone_checker.hpp>

Detailed Description

Class for digest authentication checker. Implements a stand-alone digest-authentication logic.

Definition at line 42 of file standalone_checker.hpp.

+ Inheritance diagram for server::handlers::auth::digest::AuthStandaloneCheckerBase:
+ Collaboration diagram for server::handlers::auth::digest::AuthStandaloneCheckerBase:

Public Member Functions

 AuthStandaloneCheckerBase (const AuthCheckerSettings &digest_settings, std::string &&realm, const SecdistConfig &secdist_config, std::size_t ways, std::size_t way_size)
 
bool SupportsUserAuth () const noexcept override
 
std::optional< UserDataFetchUserData (const std::string &username) const override
 
void SetUserData (const std::string &username, const std::string &nonce, std::int64_t nonce_count, TimePoint nonce_creation_time) const override
 Sets user authentication data to storage.
 
void PushUnnamedNonce (std::string nonce) const override
 Pushes "nonce" not tied to username to "Nonce Pool".
 
std::optional< TimePoint > GetUnnamedNonceCreationTime (const std::string &nonce) const override
 Returns "nonce" creation time from "Nonce Pool" if exists.
 
virtual std::optional< UserData::HA1GetHA1 (std::string_view username) const =0
 
- Public Member Functions inherited from server::handlers::auth::digest::AuthCheckerBase
 AuthCheckerBase (const AuthCheckerSettings &digest_settings, std::string &&realm, const SecdistConfig &secdist_config)
 
 AuthCheckerBase (const AuthCheckerBase &)=delete
 
 AuthCheckerBase (AuthCheckerBase &&)=delete
 
AuthCheckerBaseoperator= (const AuthCheckerBase &)=delete
 
AuthCheckerBaseoperator= (AuthCheckerBase &&)=delete
 
AuthCheckResult CheckAuth (const http::HttpRequest &request, request::RequestContext &request_context) const final
 The main checking function that is called for each request.
 

Additional Inherited Members

- Protected Member Functions inherited from server::handlers::auth::AuthCheckerBase
void SetUserAuthInfo (server::request::RequestContext &request_context, server::auth::UserAuthInfo &&info) const
 

Member Function Documentation

◆ FetchUserData()

std::optional< UserData > server::handlers::auth::digest::AuthStandaloneCheckerBase::FetchUserData ( const std::string & username) const
overridevirtual

The implementation should return std::nullopt if the user is not registered. If the user is registered, but he is not in storage, the implementation can create him with arbitrary data.

Implements server::handlers::auth::digest::AuthCheckerBase.

◆ GetUnnamedNonceCreationTime()

std::optional< TimePoint > server::handlers::auth::digest::AuthStandaloneCheckerBase::GetUnnamedNonceCreationTime ( const std::string & nonce) const
overridevirtual

Returns "nonce" creation time from "Nonce Pool" if exists.

Implements server::handlers::auth::digest::AuthCheckerBase.

◆ PushUnnamedNonce()

void server::handlers::auth::digest::AuthStandaloneCheckerBase::PushUnnamedNonce ( std::string nonce) const
overridevirtual

Pushes "nonce" not tied to username to "Nonce Pool".

Implements server::handlers::auth::digest::AuthCheckerBase.

◆ SetUserData()

void server::handlers::auth::digest::AuthStandaloneCheckerBase::SetUserData ( const std::string & username,
const std::string & nonce,
std::int64_t nonce_count,
TimePoint nonce_creation_time ) const
overridevirtual

Sets user authentication data to storage.

Implements server::handlers::auth::digest::AuthCheckerBase.

◆ SupportsUserAuth()

bool server::handlers::auth::digest::AuthStandaloneCheckerBase::SupportsUserAuth ( ) const
inlineoverridevirtualnoexcept

Returns "true" if the checker is allowed to write authentication information about the user to the RequestContext.

Reimplemented from server::handlers::auth::digest::AuthCheckerBase.

Definition at line 49 of file standalone_checker.hpp.


The documentation for this class was generated from the following file: