10Duke Scale C++ Client
Loading...
Searching...
No Matches
tenduke::oidc::device::DefaultOIDCDeviceFlow Class Reference

#include <DefaultOIDCDeviceFlow.h>

Detailed Description

Default implementation of tenduke::oidc::device::OIDCDeviceFlow.

Inheritance diagram for tenduke::oidc::device::DefaultOIDCDeviceFlow:
tenduke::oidc::BaseOIDCClient tenduke::oidc::device::OIDCDeviceFlow tenduke::oidc::OIDCClient tenduke::oidc::OIDCClient

Public Member Functions

 DefaultOIDCDeviceFlow (const std::shared_ptr< const tenduke::oidc::OIDCConfiguration > &oidcConfiguration, const std::shared_ptr< const tenduke::oauth::device::OAuthDeviceFlow > &oauthClient, const std::shared_ptr< const tenduke::jwt::JWTParser > &jwtParser, const std::shared_ptr< const tenduke::http::HTTPClient > &httpClient)
 Constructs new instance.
 
std::unique_ptr< tenduke::oidc::device::OIDCDeviceAuthenticationRequestauthenticate (const std::string &scopes) const override
 Creates OIDCRequest which performs the OIDC-authentication.
 
std::unique_ptr< tenduke::oidc::device::OIDCDeviceAuthenticationRequestauthenticate (const std::string &scopes, const std::map< std::string, std::string > &additionalProperties) const override
 Creates OIDCRequest which performs the OIDC-authentication.
 
- Public Member Functions inherited from tenduke::oidc::BaseOIDCClient
 BaseOIDCClient (const std::shared_ptr< const tenduke::oidc::OIDCConfiguration > &oidcConfiguration, const std::shared_ptr< const tenduke::oauth::OAuthClient > &oauthClient, const std::shared_ptr< const tenduke::jwt::JWTParser > &jwtParser, const std::shared_ptr< const tenduke::http::HTTPClient > &httpClient)
 Constructs new instance.
 
std::unique_ptr< const tenduke::oidc::OIDCRefreshRequestrefresh (const std::shared_ptr< tenduke::oidc::OIDCState > &state) const override
 Refreshes the OIDC state.
 
std::string requestUserinfo (const std::string &accessToken) const override
 Requests user information from "userinfo"-endpoint.
 

Additional Inherited Members

- Static Protected Member Functions inherited from tenduke::oidc::BaseOIDCClient
static std::string ensureOpenIDScope (const std::string &scopes)
 Checks if provided scopes have openid among them.
 
- Protected Attributes inherited from tenduke::oidc::BaseOIDCClient
const std::shared_ptr< const tenduke::oidc::OIDCConfigurationoidcConfiguration
 OIDC-configuration.
 
const std::shared_ptr< const tenduke::jwt::JWTParserparseJWT
 JWT-parse for parsing ID-token.
 
const std::shared_ptr< const tenduke::http::HTTPClienthttp
 HTTP-client.
 

Constructor & Destructor Documentation

◆ DefaultOIDCDeviceFlow()

tenduke::oidc::device::DefaultOIDCDeviceFlow::DefaultOIDCDeviceFlow ( const std::shared_ptr< const tenduke::oidc::OIDCConfiguration > &  oidcConfiguration,
const std::shared_ptr< const tenduke::oauth::device::OAuthDeviceFlow > &  oauthClient,
const std::shared_ptr< const tenduke::jwt::JWTParser > &  jwtParser,
const std::shared_ptr< const tenduke::http::HTTPClient > &  httpClient 
)

Constructs new instance.

Parameters
oidcConfiguration-
oauthClient-
jwtParser-
httpClient-

Member Function Documentation

◆ authenticate() [1/2]

std::unique_ptr<::OIDCDeviceAuthenticationRequest > tenduke::oidc::device::DefaultOIDCDeviceFlow::authenticate ( const std::string &  scopes) const
overridevirtual

Creates OIDCRequest which performs the OIDC-authentication.

Parameters
scopesscopes to authenticate / authorize
Returns
the request

Implements tenduke::oidc::device::OIDCDeviceFlow.

◆ authenticate() [2/2]

std::unique_ptr<::OIDCDeviceAuthenticationRequest > tenduke::oidc::device::DefaultOIDCDeviceFlow::authenticate ( const std::string &  scopes,
const std::map< std::string, std::string > &  additionalProperties 
) const
overridevirtual

Creates OIDCRequest which performs the OIDC-authentication.

Parameters
scopesscopes to authenticate / authorize
additionalPropertiesadditional properties added to the request
Returns
the request

Implements tenduke::oidc::device::OIDCDeviceFlow.


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