10Duke Enterprise C++ Client
|
#include <BrowserBasedClientFactory.h>
Factory, which creates 10Duke Enterprise client, which authenticates user by opening default OS browser.
Public Member Functions | |
BrowserBasedClientFactory (const std::string &clientId, const ::tenduke::ServiceConfiguration &serviceConfiguration=::tenduke::ServiceConfiguration()) | |
Constructs new instance with default services. | |
BrowserBasedClientFactory (const ::tenduke::TendukeServices &services) | |
Constructs new instance with given services. | |
Public Member Functions inherited from tenduke::ee::AbstractClientFactory<::tenduke::oidc::osbrowser::BrowserAuthenticationConfig > | |
AbstractClientFactory (const std::string &clientId, const ::tenduke::ServiceConfiguration &serviceConfiguration=::tenduke::ServiceConfiguration()) | |
Constructs new instance with default services. | |
AbstractClientFactory (const ::tenduke::TendukeServices &services) | |
Constructs new instance with given services. | |
virtual std::unique_ptr<::tenduke::ee::TendukeClient > | createClient (const ::tenduke::ee::ClientProperties &clientProperties, const std::string &serviceUrl, const ::tenduke::oauth::OAuthBackendConfiguration &oauthBackendConfiguration, const ::tenduke::oidc::OIDCConfiguration &oidcConfiguration, const ::tenduke::oidc::osbrowser::BrowserAuthenticationConfig &authenticationConfiguration, const std::string &initialStateAsJSON={}) const |
Creates client for 10Duke Enterprise from manually provided parameters. | |
std::unique_ptr<::tenduke::ee::TendukeClient > | createClientUsingAutodiscovery (const ::tenduke::ee::ClientProperties &clientProperties, const std::string &serviceUrl, const ::tenduke::oidc::osbrowser::BrowserAuthenticationConfig &authenticationConfiguration, const std::string &initialStateAsJSON={}) const |
Creates client for 10Duke Enterprise, using OIDC autodiscovery for OAuth and OIDC parameters. | |
Protected Member Functions | |
std::shared_ptr<::tenduke::oidc::OIDCLogin > | createOIDCLoginService (const std::shared_ptr< const ::tenduke::oauth::OAuthConfiguration > &oauthConfiguration, const std::shared_ptr< const ::tenduke::oidc::OIDCConfiguration > &oidcConfiguration, const ::tenduke::oidc::osbrowser::BrowserAuthenticationConfig &authenticationConfig) const override |
Creates the authentication-specific OIDC login service. | |
std::shared_ptr<::tenduke::oauth::OAuthConfiguration > | mkOAuthConfiguration (const ::tenduke::oauth::OAuthBackendConfiguration &oauthBackendConfiguration, const ::tenduke::oidc::osbrowser::BrowserAuthenticationConfig &authenticationConfig) const override |
Creates full OAuth-configuration. | |
Protected Member Functions inherited from tenduke::ee::AbstractClientFactory<::tenduke::oidc::osbrowser::BrowserAuthenticationConfig > | |
virtual std::shared_ptr<::tenduke::ee::licensing::LicensingConfiguration > | mkLicensingConfiguration (const std::string &serviceUrl, const ::tenduke::ee::ClientProperties &clientProperties, const ::tenduke::oidc::OIDCConfiguration &oidcConfig) const |
Creates licensing configuration from provided parameters. | |
virtual void | dumpAutodiscoveryResult (const ::tenduke::oidc::AutoDiscovery &service, const ::tenduke::oidc::AutoDiscoveryResult &result) const |
Dumps OIDC autodiscovery result to log, using DEBUG log level. | |
Additional Inherited Members | |
Protected Attributes inherited from tenduke::ee::AbstractClientFactory<::tenduke::oidc::osbrowser::BrowserAuthenticationConfig > | |
::tenduke::TendukeServices | services |
tenduke::ee::BrowserBasedClientFactory::BrowserBasedClientFactory | ( | const std::string & | clientId, |
const ::tenduke::ServiceConfiguration & | serviceConfiguration = ::tenduke::ServiceConfiguration() |
||
) |
Constructs new instance with default services.
clientId | Identifier of the client. Used mainly as HTTP user-agent. This value is very useful when analysing or troubleshooting activity from access logs. We recommend that value is relatively short and contains short application identifier, version and platform identifier. Use "HTTP-friendly"-characters, e.g. [0-9A-Z a-z .-_~/]. Example: the-app/1.0.0/win11 |
serviceConfiguration | Configuration for the underlying services. Optional. |
|
explicit |
Constructs new instance with given services.
This allows constructing the factory with custom services.
services | - |
|
overrideprotectedvirtual |
Creates the authentication-specific OIDC login service.
oauthConfig | - |
oidcConfig | - |
authenticationConfig | - |
Implements tenduke::ee::AbstractClientFactory<::tenduke::oidc::osbrowser::BrowserAuthenticationConfig >.
|
overrideprotectedvirtual |
Creates full OAuth-configuration.
oauthBackendConfig | - |
authenticationConfig | - |
Implements tenduke::ee::AbstractClientFactory<::tenduke::oidc::osbrowser::BrowserAuthenticationConfig >.