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>
58 Aws::Crt::Variant<smithy::SigV4AuthScheme, smithy::SigV4aAuthScheme, smithy::NoAuthScheme>,
59 STSEndpointProviderBase, smithy::client::XmlOutcomeSerializer, smithy::client::XmlOutcome,
60 Aws::Client::STSErrorMarshaller>,
76 std::shared_ptr<STSEndpointProviderBase> endpointProvider =
nullptr);
89 STSClient(
const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
90 std::shared_ptr<STSEndpointProviderBase> endpointProvider =
nullptr,
110 STSClient(
const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
120 const char* region)
const;
211 template <
typename AssumeRoleRequestT = Model::AssumeRoleRequest>
213 return SubmitCallable(&STSClient::AssumeRole, request);
220 template <
typename AssumeRoleRequestT = Model::AssumeRoleRequest>
222 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
223 return SubmitAsync(&STSClient::AssumeRole, request, handler, context);
353 template <
typename AssumeRoleWithSAMLRequestT = Model::AssumeRoleWithSAMLRequest>
355 return SubmitCallable(&STSClient::AssumeRoleWithSAML, request);
362 template <
typename AssumeRoleWithSAMLRequestT = Model::AssumeRoleWithSAMLRequest>
364 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
365 return SubmitAsync(&STSClient::AssumeRoleWithSAML, request, handler, context);
497 template <
typename AssumeRoleWithWebIdentityRequestT = Model::AssumeRoleWithWebIdentityRequest>
499 const AssumeRoleWithWebIdentityRequestT& request)
const {
500 return SubmitCallable(&STSClient::AssumeRoleWithWebIdentity, request);
507 template <
typename AssumeRoleWithWebIdentityRequestT = Model::AssumeRoleWithWebIdentityRequest>
510 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
511 return SubmitAsync(&STSClient::AssumeRoleWithWebIdentity, request, handler, context);
549 template <
typename AssumeRootRequestT = Model::AssumeRootRequest>
551 return SubmitCallable(&STSClient::AssumeRoot, request);
558 template <
typename AssumeRootRequestT = Model::AssumeRootRequest>
560 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
561 return SubmitAsync(&STSClient::AssumeRoot, request, handler, context);
601 template <
typename DecodeAuthorizationMessageRequestT = Model::DecodeAuthorizationMessageRequest>
603 const DecodeAuthorizationMessageRequestT& request)
const {
604 return SubmitCallable(&STSClient::DecodeAuthorizationMessage, request);
611 template <
typename DecodeAuthorizationMessageRequestT = Model::DecodeAuthorizationMessageRequest>
614 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
615 return SubmitAsync(&STSClient::DecodeAuthorizationMessage, request, handler, context);
652 template <
typename GetAccessKeyInfoRequestT = Model::GetAccessKeyInfoRequest>
654 return SubmitCallable(&STSClient::GetAccessKeyInfo, request);
661 template <
typename GetAccessKeyInfoRequestT = Model::GetAccessKeyInfoRequest>
663 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
664 return SubmitAsync(&STSClient::GetAccessKeyInfo, request, handler, context);
687 template <
typename GetCallerIdentityRequestT = Model::GetCallerIdentityRequest>
689 return SubmitCallable(&STSClient::GetCallerIdentity, request);
696 template <
typename GetCallerIdentityRequestT = Model::GetCallerIdentityRequest>
698 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr,
699 const GetCallerIdentityRequestT& request = {})
const {
700 return SubmitAsync(&STSClient::GetCallerIdentity, request, handler, context);
718 template <
typename GetDelegatedAccessTokenRequestT = Model::GetDelegatedAccessTokenRequest>
720 return SubmitCallable(&STSClient::GetDelegatedAccessToken, request);
727 template <
typename GetDelegatedAccessTokenRequestT = Model::GetDelegatedAccessTokenRequest>
730 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
731 return SubmitAsync(&STSClient::GetDelegatedAccessToken, request, handler, context);
830 template <
typename GetFederationTokenRequestT = Model::GetFederationTokenRequest>
832 return SubmitCallable(&STSClient::GetFederationToken, request);
839 template <
typename GetFederationTokenRequestT = Model::GetFederationTokenRequest>
841 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
842 return SubmitAsync(&STSClient::GetFederationToken, request, handler, context);
903 template <
typename GetSessionTokenRequestT = Model::GetSessionTokenRequest>
905 return SubmitCallable(&STSClient::GetSessionToken, request);
912 template <
typename GetSessionTokenRequestT = Model::GetSessionTokenRequest>
914 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr,
915 const GetSessionTokenRequestT& request = {})
const {
916 return SubmitAsync(&STSClient::GetSessionToken, request, handler, context);
936 template <
typename GetWebIdentityTokenRequestT = Model::GetWebIdentityTokenRequest>
938 return SubmitCallable(&STSClient::GetWebIdentityToken, request);
945 template <
typename GetWebIdentityTokenRequestT = Model::GetWebIdentityTokenRequest>
947 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context =
nullptr)
const {
948 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