10Duke Scale C++ Client
Loading...
Searching...
No Matches
OIDCLoginRequestWithLoopbackRedirection.h
1#ifndef TENDUKE_OIDC_OIDCLOGINREQUESTWITHLOOPBACKREDIRECTION_H
2#define TENDUKE_OIDC_OIDCLOGINREQUESTWITHLOOPBACKREDIRECTION_H
3
4#include "./RedirectUriHandler.h"
5#include "oidc/OIDCBrowserFlowAuthenticationRequest.h"
6#include "oidc/OIDCState.h"
7#include "oidc/session/OIDCLoginRequest.h"
8#include "osa/BrowserIntegration.h"
9#include "http/server/AbstractHTTPServer.h"
10
11#include <memory>
12
13namespace tenduke { namespace oidc { namespace osbrowser {
14
29
30public:
39 const std::shared_ptr<const tenduke::osa::BrowserIntegration> &browser,
40 const std::shared_ptr<tenduke::oidc::osbrowser::RedirectUriHandler> &redirectUriHandler,
41 const std::shared_ptr<tenduke::http::server::AbstractHTTPServer> &httpServer,
42 std::unique_ptr<const tenduke::oidc::OIDCBrowserFlowAuthenticationRequest> oidcRequest
43 );
44
45 // tenduke::sso::OIDCLoginRequest interface
46public:
47 std::unique_ptr<tenduke::oidc::OIDCState> execute() override;
48 void abort() override;
49
50private:
51 const std::shared_ptr<const tenduke::osa::BrowserIntegration> browser;
52 const std::shared_ptr<tenduke::oidc::osbrowser::RedirectUriHandler> redirectUriHandler;
53 const std::shared_ptr<tenduke::http::server::AbstractHTTPServer> httpServer;
54 const std::unique_ptr<const tenduke::oidc::OIDCBrowserFlowAuthenticationRequest> oidcRequest;
55};
56
57}}}
58
59#endif //TENDUKE_OIDC_OIDCLOGINREQUESTWITHLOOPBACKREDIRECTION_H
Login-request initiated by OIDCLogin-service.
Definition OIDCLoginRequest.h:15
An implementation of tenduke::sso::OIDCLogin using external browser (the OS default browser) and with...
Definition OIDCLoginRequestWithLoopbackRedirection.h:28
std::unique_ptr< tenduke::oidc::OIDCState > execute() override
Performs the login.
Definition OIDCLoginRequestWithLoopbackRedirection.cpp:20
void abort() override
Aborts the login.
Definition OIDCLoginRequestWithLoopbackRedirection.cpp:51
Root for classes, functions and globals of 10Duke C++ Client.
Definition BackendConfiguration.h:7