10Duke Enterprise C++ SDK
Loading...
Searching...
No Matches
OIDCLoginRequestWithLoopbackRedirection.h
1#ifndef TENDUKE_OIDC_OIDCLOGINREQUESTWITHLOOPBACKREDIRECTION_H
2#define TENDUKE_OIDC_OIDCLOGINREQUESTWITHLOOPBACKREDIRECTION_H
3
4#include "./LoopbackRedirectionLoginParameters.h"
5#include "oidc/session/OIDCLoginRequest.h"
6
7#include <atomic>
8#include <memory>
9#include <string>
10#include <cstdint>
11
12namespace tenduke { namespace oidc { namespace osbrowser {
13
28
29public:
37 const std::shared_ptr<const ::tenduke::oidc::osbrowser::LoopbackRedirectionLoginParameters> &parameters,
38 uint32_t acceptTimeoutMs = 250,
39 uint32_t receiveTimeoutMs = 250
40 );
41
42 // ::tenduke::oidc::session::OIDCLoginRequest interface
43public:
44 std::unique_ptr<::tenduke::oidc::OIDCState> execute() override;
45 void abort() override;
46
47protected:
54 std::unique_ptr<::tenduke::oauth::OAuthConfiguration> tweakOAuthConfiguration(std::uint16_t port) const;
55
56private:
57 const std::shared_ptr<const ::tenduke::oidc::osbrowser::LoopbackRedirectionLoginParameters> parameters;
58 std::atomic_bool running;
59 uint32_t acceptTimeoutMs;
60 uint32_t receiveTimeoutMs;
61};
62
63}}}
64
65#endif //TENDUKE_OIDC_OIDCLOGINREQUESTWITHLOOPBACKREDIRECTION_H
OIDCLoginRequestWithLoopbackRedirection(const std::shared_ptr< const ::tenduke::oidc::osbrowser::LoopbackRedirectionLoginParameters > &parameters, uint32_t acceptTimeoutMs=250, uint32_t receiveTimeoutMs=250)
Constructs a new instance.
Definition OIDCLoginRequestWithLoopbackRedirection.cpp:196
Login-request initiated by OIDCLogin-service.
Definition OIDCLoginRequest.h:15
std::unique_ptr<::tenduke::oidc::OIDCState > execute() override
Performs the login.
Definition OIDCLoginRequestWithLoopbackRedirection.cpp:53
OIDCLoginRequestWithLoopbackRedirection(const std::shared_ptr< const ::tenduke::oidc::osbrowser::LoopbackRedirectionLoginParameters > &parameters, uint32_t acceptTimeoutMs=250, uint32_t receiveTimeoutMs=250)
Constructs a new instance.
Definition OIDCLoginRequestWithLoopbackRedirection.cpp:196
void abort() override
Aborts the login.
Definition OIDCLoginRequestWithLoopbackRedirection.cpp:190
std::unique_ptr<::tenduke::oauth::OAuthConfiguration > tweakOAuthConfiguration(std::uint16_t port) const
Creates a new OAuthConfiguration by replacing port to the redirectURI.
Definition OIDCLoginRequestWithLoopbackRedirection.cpp:35
Services to perform OIDC-login using OS-browser with loopback redirection.
Definition BrowserAuthenticationConfig.h:9
Implementation of OpenID Connect protocol.
Definition AutoDiscovery.h:15
Root for classes, functions and globals of 10Duke C++ Client.
Definition APIRequest.h:4