10Duke Enterprise C++ Client
Loading...
Searching...
No Matches
OIDCResourceOwnerPasswordFlow.h
1#ifndef TENDUKE_OIDC_ROPG_OIDCRESOURCEOWNERPASSWORDFLOW_H
2#define TENDUKE_OIDC_ROPG_OIDCRESOURCEOWNERPASSWORDFLOW_H
3
4#include "./OIDCResourceOwnerPasswordRequest.h"
5#include "../../oauth/ropg/OAuthResourceOwnerPasswordFlow.h"
6#include "oidc/impl/BaseOIDCClient.h"
7
8namespace tenduke { namespace oidc { namespace ropg {
9
14{
15public:
24 const std::shared_ptr<const ::tenduke::oidc::OIDCConfiguration> &oidcConfiguration,
25 const std::shared_ptr<const ::tenduke::oauth::ropg::OAuthResourceOwnerPasswordFlow> &oauthClient,
26 const std::shared_ptr<const ::tenduke::jwt::JWTParser> &jwtParser,
27 const std::shared_ptr<const ::tenduke::http::HTTPClient> &httpClient
28 );
29
30public:
36 virtual std::unique_ptr<::tenduke::oidc::ropg::OIDCResourceOwnerPasswordRequest> authenticate(const std::string &scopes) const;
37
38private:
39 const std::shared_ptr<const ::tenduke::oauth::ropg::OAuthResourceOwnerPasswordFlow> oauth;
40};
41
42}}}
43
44#endif //TENDUKE_OIDC_ROPG_OIDCRESOURCEOWNERPASSWORDFLOW_H
Base-class for OIDC-clients.
Definition BaseOIDCClient.h:22
const std::shared_ptr< const tenduke::oidc::OIDCConfiguration > oidcConfiguration
OIDC-configuration.
Definition BaseOIDCClient.h:71
OIDC authentication service, which uses OAuth Resource Owner Password Credentials Grant.
Definition OIDCResourceOwnerPasswordFlow.h:14
virtual std::unique_ptr<::tenduke::oidc::ropg::OIDCResourceOwnerPasswordRequest > authenticate(const std::string &scopes) const
Authenticates the user.
Definition OIDCResourceOwnerPasswordFlow.cpp:14
OAuth services.
Definition AccessTokenRequestAuthenticator.h:8
Root for classes, functions and globals of 10Duke C++ Client.
Definition APIRequest.h:4