10Duke Enterprise C++ SDK
Loading...
Searching...
No Matches
LoopbackRedirectionLoginParameters.h
1#ifndef TENDUKE_OIDC_OSBROWSER_LOOPBACKREDIRECTIONLOGINPARAMETERSs_H
2#define TENDUKE_OIDC_OSBROWSER_LOOPBACKREDIRECTIONLOGINPARAMETERSs_H
3
4#include "../../http/server/HTTPRequestParser.h"
5#include "../../osa/BrowserIntegration.h"
6#include "../../osa/SocketFactory.h"
7
8#include "net/URLs.h"
9#include "oidc/OIDCClientFactory.h"
10
11#include <map>
12#include <memory>
13#include <string>
14
15namespace tenduke { namespace oidc { namespace osbrowser {
16
17class LoopbackRedirectionLoginParameters
18{
19public:
20 LoopbackRedirectionLoginParameters(
21 const std::shared_ptr<const tenduke::oauth::OAuthConfiguration> &oauthConfiguration,
22 const std::shared_ptr<const tenduke::oidc::OIDCConfiguration> &oidcConfiguration,
23 const std::shared_ptr<const tenduke::osa::BrowserIntegration> &browser,
24 const std::shared_ptr<const tenduke::osa::SocketFactory> &createSocket,
25 const std::shared_ptr<const tenduke::http::server::HTTPRequestParser> &requestParser,
26 const std::shared_ptr<const tenduke::net::URLs> &urls,
27 const std::shared_ptr<const tenduke::oidc::OIDCClientFactory> &oidcClientFactory,
28 std::string scope,
29 std::string redirectURIPrefix,
30 std::string responseMessage,
31 const std::uint16_t port,
32 const std::map<std::string, std::string> &additionalParameters = {}
33 ) : oauthConfiguration(oauthConfiguration)
34 , oidcConfiguration(oidcConfiguration)
35 , browser(browser)
36 , createSocket(createSocket)
37 , requestParser(requestParser)
38 , urls(urls)
39 , oidcClient(oidcClientFactory)
40 , scope(std::move(scope))
41 , redirectUriPrefix(std::move(redirectURIPrefix))
43 , port(port)
45 {
46 }
47
48public:
49 const std::shared_ptr<const ::tenduke::oauth::OAuthConfiguration> oauthConfiguration;
50 const std::shared_ptr<const ::tenduke::oidc::OIDCConfiguration> oidcConfiguration;
51 const std::shared_ptr<const ::tenduke::osa::BrowserIntegration> browser;
52 const std::shared_ptr<const ::tenduke::osa::SocketFactory> createSocket;
53 const std::shared_ptr<const ::tenduke::http::server::HTTPRequestParser> requestParser;
54 const std::shared_ptr<const ::tenduke::net::URLs> urls;
55 const std::shared_ptr<const ::tenduke::oidc::OIDCClientFactory> oidcClient;
56 const std::string scope;
57 const std::string redirectUriPrefix;
63 const std::string responseMessage;
64 const std::uint16_t port;
66 const std::map<std::string, std::string> additionalParameters;
67};
68
69}}}
70
71#endif //TENDUKE_OIDC_OSBROWSER_LOOPBACKREDIRECTIONLOGINPARAMETERSs_H
const std::string responseMessage
The HTTP server returns this message when the redirectURI is navigated to.
Definition LoopbackRedirectionLoginParameters.h:63
const std::map< std::string, std::string > additionalParameters
Additional parameters added to the OIDC authentication request.
Definition LoopbackRedirectionLoginParameters.h:66
const std::string responseMessage
The HTTP server returns this message when the redirectURI is navigated to.
Definition LoopbackRedirectionLoginParameters.h:63
const std::map< std::string, std::string > additionalParameters
Additional parameters added to the OIDC authentication request.
Definition LoopbackRedirectionLoginParameters.h:66
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