7#include <aws/core/client/AWSClientAsyncCRTP.h>
8#include <aws/core/client/ClientConfiguration.h>
9#include <aws/sts/STSErrorMarshaller.h>
10#include <aws/sts/STSPaginationBase.h>
11#include <aws/sts/STSServiceClientModel.h>
12#include <aws/sts/STSWaiter.h>
13#include <aws/sts/STS_EXPORTS.h>
14#include <smithy/client/AwsSmithyClient.h>
15#include <smithy/client/serializer/XmlOutcomeSerializer.h>
16#include <smithy/identity/auth/built-in/GenericAuthSchemeResolver.h>
17#include <smithy/identity/auth/built-in/NoAuthScheme.h>
18#include <smithy/identity/auth/built-in/SigV4AuthScheme.h>
19#include <smithy/identity/auth/built-in/SigV4aAuthScheme.h>
35 Aws::Crt::Variant<smithy::SigV4AuthScheme, smithy::SigV4aAuthScheme, smithy::NoAuthScheme>,
36 STSEndpointProviderBase, smithy::client::XmlOutcomeSerializer, smithy::client::XmlOutcome,
37 Aws::Client::STSErrorMarshaller>,
53 std::shared_ptr<STSEndpointProviderBase> endpointProvider =
nullptr);
66 STSClient(
const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
67 std::shared_ptr<STSEndpointProviderBase> endpointProvider =
nullptr,
87 STSClient(
const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
97 const char* region)
const;
188 template <
typename AssumeRoleRequestT = Model::AssumeRoleRequest>
190 return SubmitCallable(&STSClient::AssumeRole, request);
197 template <
typename AssumeRoleRequestT = Model::AssumeRoleRequest>
199 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
200 return SubmitAsync(&STSClient::AssumeRole, request, handler, context);
330 template <
typename AssumeRoleWithSAMLRequestT = Model::AssumeRoleWithSAMLRequest>
332 return SubmitCallable(&STSClient::AssumeRoleWithSAML, request);
339 template <
typename AssumeRoleWithSAMLRequestT = Model::AssumeRoleWithSAMLRequest>
341 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
342 return SubmitAsync(&STSClient::AssumeRoleWithSAML, request, handler, context);
474 template <
typename AssumeRoleWithWebIdentityRequestT = Model::AssumeRoleWithWebIdentityRequest>
476 const AssumeRoleWithWebIdentityRequestT& request)
const {
477 return SubmitCallable(&STSClient::AssumeRoleWithWebIdentity, request);
484 template <
typename AssumeRoleWithWebIdentityRequestT = Model::AssumeRoleWithWebIdentityRequest>
487 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
488 return SubmitAsync(&STSClient::AssumeRoleWithWebIdentity, request, handler, context);
526 template <
typename AssumeRootRequestT = Model::AssumeRootRequest>
528 return SubmitCallable(&STSClient::AssumeRoot, request);
535 template <
typename AssumeRootRequestT = Model::AssumeRootRequest>
537 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
538 return SubmitAsync(&STSClient::AssumeRoot, request, handler, context);
578 template <
typename DecodeAuthorizationMessageRequestT = Model::DecodeAuthorizationMessageRequest>
580 const DecodeAuthorizationMessageRequestT& request)
const {
581 return SubmitCallable(&STSClient::DecodeAuthorizationMessage, request);
588 template <
typename DecodeAuthorizationMessageRequestT = Model::DecodeAuthorizationMessageRequest>
591 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
592 return SubmitAsync(&STSClient::DecodeAuthorizationMessage, request, handler, context);
629 template <
typename GetAccessKeyInfoRequestT = Model::GetAccessKeyInfoRequest>
631 return SubmitCallable(&STSClient::GetAccessKeyInfo, request);
638 template <
typename GetAccessKeyInfoRequestT = Model::GetAccessKeyInfoRequest>
640 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
641 return SubmitAsync(&STSClient::GetAccessKeyInfo, request, handler, context);
664 template <
typename GetCallerIdentityRequestT = Model::GetCallerIdentityRequest>
666 return SubmitCallable(&STSClient::GetCallerIdentity, request);
673 template <
typename GetCallerIdentityRequestT = Model::GetCallerIdentityRequest>
675 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr,
676 const GetCallerIdentityRequestT& request = {})
const {
677 return SubmitAsync(&STSClient::GetCallerIdentity, request, handler, context);
695 template <
typename GetDelegatedAccessTokenRequestT = Model::GetDelegatedAccessTokenRequest>
697 return SubmitCallable(&STSClient::GetDelegatedAccessToken, request);
704 template <
typename GetDelegatedAccessTokenRequestT = Model::GetDelegatedAccessTokenRequest>
707 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
708 return SubmitAsync(&STSClient::GetDelegatedAccessToken, request, handler, context);
807 template <
typename GetFederationTokenRequestT = Model::GetFederationTokenRequest>
809 return SubmitCallable(&STSClient::GetFederationToken, request);
816 template <
typename GetFederationTokenRequestT = Model::GetFederationTokenRequest>
818 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
819 return SubmitAsync(&STSClient::GetFederationToken, request, handler, context);
880 template <
typename GetSessionTokenRequestT = Model::GetSessionTokenRequest>
882 return SubmitCallable(&STSClient::GetSessionToken, request);
889 template <
typename GetSessionTokenRequestT = Model::GetSessionTokenRequest>
891 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr,
892 const GetSessionTokenRequestT& request = {})
const {
893 return SubmitAsync(&STSClient::GetSessionToken, request, handler, context);
911 template <
typename GetWebIdentityTokenRequestT = Model::GetWebIdentityTokenRequest>
913 return SubmitCallable(&STSClient::GetWebIdentityToken, request);
920 template <
typename GetWebIdentityTokenRequestT = Model::GetWebIdentityTokenRequest>
922 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
923 return SubmitAsync(&STSClient::GetWebIdentityToken, request, handler, context);
Model::GetAccessKeyInfoOutcomeCallable GetAccessKeyInfoCallable(const GetAccessKeyInfoRequestT &request) const
STSClient(const std::shared_ptr< Aws::Auth::AWSCredentialsProvider > &credentialsProvider, std::shared_ptr< STSEndpointProviderBase > endpointProvider=nullptr, const Aws::STS::STSClientConfiguration &clientConfiguration=Aws::STS::STSClientConfiguration())
void GetAccessKeyInfoAsync(const GetAccessKeyInfoRequestT &request, const GetAccessKeyInfoResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::GetAccessKeyInfoOutcome GetAccessKeyInfo(const Model::GetAccessKeyInfoRequest &request) const
Model::GetFederationTokenOutcomeCallable GetFederationTokenCallable(const GetFederationTokenRequestT &request) const
Model::AssumeRoleWithWebIdentityOutcomeCallable AssumeRoleWithWebIdentityCallable(const AssumeRoleWithWebIdentityRequestT &request) const
virtual Model::GetWebIdentityTokenOutcome GetWebIdentityToken(const Model::GetWebIdentityTokenRequest &request) const
virtual Model::GetCallerIdentityOutcome GetCallerIdentity(const Model::GetCallerIdentityRequest &request={}) const
Model::GetWebIdentityTokenOutcomeCallable GetWebIdentityTokenCallable(const GetWebIdentityTokenRequestT &request) const
STSClient(const Aws::STS::STSClientConfiguration &clientConfiguration=Aws::STS::STSClientConfiguration(), std::shared_ptr< STSEndpointProviderBase > endpointProvider=nullptr)
void AssumeRoleWithWebIdentityAsync(const AssumeRoleWithWebIdentityRequestT &request, const AssumeRoleWithWebIdentityResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void AssumeRoleAsync(const AssumeRoleRequestT &request, const AssumeRoleResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void DecodeAuthorizationMessageAsync(const DecodeAuthorizationMessageRequestT &request, const DecodeAuthorizationMessageResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
void GetCallerIdentityAsync(const GetCallerIdentityResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr, const GetCallerIdentityRequestT &request={}) const
virtual Model::AssumeRoleWithSAMLOutcome AssumeRoleWithSAML(const Model::AssumeRoleWithSAMLRequest &request) const
virtual std::shared_ptr< STSEndpointProviderBase > & accessEndpointProvider()
Model::AssumeRoleWithSAMLOutcomeCallable AssumeRoleWithSAMLCallable(const AssumeRoleWithSAMLRequestT &request) const
void GetFederationTokenAsync(const GetFederationTokenRequestT &request, const GetFederationTokenResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
STSClientConfiguration ClientConfigurationType
Model::GetDelegatedAccessTokenOutcomeCallable GetDelegatedAccessTokenCallable(const GetDelegatedAccessTokenRequestT &request) const
virtual Model::AssumeRoleWithWebIdentityOutcome AssumeRoleWithWebIdentity(const Model::AssumeRoleWithWebIdentityRequest &request) const
virtual Aws::String ConvertRequestToPresignedUrl(const Aws::AmazonSerializableWebServiceRequest &requestToConvert, const char *region) const
STSClient(const std::shared_ptr< Aws::Auth::AWSCredentialsProvider > &credentialsProvider, const Aws::Client::ClientConfiguration &clientConfiguration)
const char * GetServiceClientName() const override
void GetWebIdentityTokenAsync(const GetWebIdentityTokenRequestT &request, const GetWebIdentityTokenResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual Model::AssumeRoleOutcome AssumeRole(const Model::AssumeRoleRequest &request) const
virtual Model::DecodeAuthorizationMessageOutcome DecodeAuthorizationMessage(const Model::DecodeAuthorizationMessageRequest &request) const
static const char * GetServiceName()
virtual Model::GetSessionTokenOutcome GetSessionToken(const Model::GetSessionTokenRequest &request={}) const
STSClient(const Aws::Auth::AWSCredentials &credentials, const Aws::Client::ClientConfiguration &clientConfiguration)
Model::DecodeAuthorizationMessageOutcomeCallable DecodeAuthorizationMessageCallable(const DecodeAuthorizationMessageRequestT &request) const
void GetSessionTokenAsync(const GetSessionTokenResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr, const GetSessionTokenRequestT &request={}) const
Model::AssumeRoleOutcomeCallable AssumeRoleCallable(const AssumeRoleRequestT &request) const
Model::AssumeRootOutcomeCallable AssumeRootCallable(const AssumeRootRequestT &request) const
Model::GetCallerIdentityOutcomeCallable GetCallerIdentityCallable(const GetCallerIdentityRequestT &request={}) const
virtual Model::GetFederationTokenOutcome GetFederationToken(const Model::GetFederationTokenRequest &request) const
static const char * GetAllocationTag()
void AssumeRootAsync(const AssumeRootRequestT &request, const AssumeRootResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
virtual void OverrideEndpoint(const Aws::String &endpoint)
virtual Model::GetDelegatedAccessTokenOutcome GetDelegatedAccessToken(const Model::GetDelegatedAccessTokenRequest &request) const
STSClient(const Aws::Auth::AWSCredentials &credentials, std::shared_ptr< STSEndpointProviderBase > endpointProvider=nullptr, const Aws::STS::STSClientConfiguration &clientConfiguration=Aws::STS::STSClientConfiguration())
Model::GetSessionTokenOutcomeCallable GetSessionTokenCallable(const GetSessionTokenRequestT &request={}) const
void AssumeRoleWithSAMLAsync(const AssumeRoleWithSAMLRequestT &request, const AssumeRoleWithSAMLResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
STSClient(const Aws::Client::ClientConfiguration &clientConfiguration)
virtual Model::AssumeRootOutcome AssumeRoot(const Model::AssumeRootRequest &request) const
STSEndpointProvider EndpointProviderType
void GetDelegatedAccessTokenAsync(const GetDelegatedAccessTokenRequestT &request, const GetDelegatedAccessTokenResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
std::future< GetCallerIdentityOutcome > GetCallerIdentityOutcomeCallable
std::future< AssumeRoleWithWebIdentityOutcome > AssumeRoleWithWebIdentityOutcomeCallable
std::future< GetAccessKeyInfoOutcome > GetAccessKeyInfoOutcomeCallable
std::future< AssumeRootOutcome > AssumeRootOutcomeCallable
std::future< GetWebIdentityTokenOutcome > GetWebIdentityTokenOutcomeCallable
std::future< AssumeRoleWithSAMLOutcome > AssumeRoleWithSAMLOutcomeCallable
std::future< GetFederationTokenOutcome > GetFederationTokenOutcomeCallable
std::future< DecodeAuthorizationMessageOutcome > DecodeAuthorizationMessageOutcomeCallable
std::future< GetDelegatedAccessTokenOutcome > GetDelegatedAccessTokenOutcomeCallable
std::future< AssumeRoleOutcome > AssumeRoleOutcomeCallable
std::future< GetSessionTokenOutcome > GetSessionTokenOutcomeCallable
std::function< void(const STSClient *, const Model::GetDelegatedAccessTokenRequest &, const Model::GetDelegatedAccessTokenOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetDelegatedAccessTokenResponseReceivedHandler
std::function< void(const STSClient *, const Model::AssumeRootRequest &, const Model::AssumeRootOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> AssumeRootResponseReceivedHandler
std::function< void(const STSClient *, const Model::DecodeAuthorizationMessageRequest &, const Model::DecodeAuthorizationMessageOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> DecodeAuthorizationMessageResponseReceivedHandler
std::function< void(const STSClient *, const Model::AssumeRoleRequest &, const Model::AssumeRoleOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> AssumeRoleResponseReceivedHandler
AWS_STS_API const char SERVICE_NAME[]
std::function< void(const STSClient *, const Model::GetSessionTokenRequest &, const Model::GetSessionTokenOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetSessionTokenResponseReceivedHandler
std::function< void(const STSClient *, const Model::GetAccessKeyInfoRequest &, const Model::GetAccessKeyInfoOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetAccessKeyInfoResponseReceivedHandler
std::function< void(const STSClient *, const Model::GetWebIdentityTokenRequest &, const Model::GetWebIdentityTokenOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetWebIdentityTokenResponseReceivedHandler
std::function< void(const STSClient *, const Model::GetCallerIdentityRequest &, const Model::GetCallerIdentityOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetCallerIdentityResponseReceivedHandler
std::function< void(const STSClient *, const Model::GetFederationTokenRequest &, const Model::GetFederationTokenOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetFederationTokenResponseReceivedHandler
std::function< void(const STSClient *, const Model::AssumeRoleWithWebIdentityRequest &, const Model::AssumeRoleWithWebIdentityOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> AssumeRoleWithWebIdentityResponseReceivedHandler
std::function< void(const STSClient *, const Model::AssumeRoleWithSAMLRequest &, const Model::AssumeRoleWithSAMLOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> AssumeRoleWithSAMLResponseReceivedHandler
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String