AWS SDK for C++

AWS SDK for C++ Version 1.11.908

Loading...
Searching...
No Matches
STSClient.h
1
6#pragma once
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>
20
21namespace Aws {
22namespace STS {
23AWS_STS_API extern const char SERVICE_NAME[];
55class AWS_STS_API STSClient
57 public smithy::client::AwsSmithyClientT<Aws::STS::SERVICE_NAME, Aws::STS::STSClientConfiguration, smithy::AuthSchemeResolverBase<>,
58 Aws::Crt::Variant<smithy::SigV4AuthScheme, smithy::SigV4aAuthScheme, smithy::NoAuthScheme>,
59 STSEndpointProviderBase, smithy::client::XmlOutcomeSerializer, smithy::client::XmlOutcome,
60 Aws::Client::STSErrorMarshaller>,
61 public STSPaginationBase<STSClient>,
62 public STSWaiter<STSClient> {
63 public:
64 static const char* GetServiceName();
65 static const char* GetAllocationTag();
66 inline const char* GetServiceClientName() const override { return "STS"; }
67
70
76 std::shared_ptr<STSEndpointProviderBase> endpointProvider = nullptr);
77
82 STSClient(const Aws::Auth::AWSCredentials& credentials, std::shared_ptr<STSEndpointProviderBase> endpointProvider = nullptr,
84
89 STSClient(const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
90 std::shared_ptr<STSEndpointProviderBase> endpointProvider = nullptr,
92
93 /* Legacy constructors due deprecation */
98 STSClient(const Aws::Client::ClientConfiguration& clientConfiguration);
99
104 STSClient(const Aws::Auth::AWSCredentials& credentials, const Aws::Client::ClientConfiguration& clientConfiguration);
105
110 STSClient(const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
111 const Aws::Client::ClientConfiguration& clientConfiguration);
112
113 /* End of legacy constructors due deprecation */
114 virtual ~STSClient();
115
120 const char* region) const;
121
207
211 template <typename AssumeRoleRequestT = Model::AssumeRoleRequest>
212 Model::AssumeRoleOutcomeCallable AssumeRoleCallable(const AssumeRoleRequestT& request) const {
213 return SubmitCallable(&STSClient::AssumeRole, request);
214 }
215
220 template <typename AssumeRoleRequestT = Model::AssumeRoleRequest>
221 void AssumeRoleAsync(const AssumeRoleRequestT& request, const AssumeRoleResponseReceivedHandler& handler,
222 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
223 return SubmitAsync(&STSClient::AssumeRole, request, handler, context);
224 }
225
348
353 template <typename AssumeRoleWithSAMLRequestT = Model::AssumeRoleWithSAMLRequest>
354 Model::AssumeRoleWithSAMLOutcomeCallable AssumeRoleWithSAMLCallable(const AssumeRoleWithSAMLRequestT& request) const {
355 return SubmitCallable(&STSClient::AssumeRoleWithSAML, request);
356 }
357
362 template <typename AssumeRoleWithSAMLRequestT = Model::AssumeRoleWithSAMLRequest>
363 void AssumeRoleWithSAMLAsync(const AssumeRoleWithSAMLRequestT& request, const AssumeRoleWithSAMLResponseReceivedHandler& handler,
364 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
365 return SubmitAsync(&STSClient::AssumeRoleWithSAML, request, handler, context);
366 }
367
492
497 template <typename AssumeRoleWithWebIdentityRequestT = Model::AssumeRoleWithWebIdentityRequest>
499 const AssumeRoleWithWebIdentityRequestT& request) const {
500 return SubmitCallable(&STSClient::AssumeRoleWithWebIdentity, request);
501 }
502
507 template <typename AssumeRoleWithWebIdentityRequestT = Model::AssumeRoleWithWebIdentityRequest>
508 void AssumeRoleWithWebIdentityAsync(const AssumeRoleWithWebIdentityRequestT& request,
510 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
511 return SubmitAsync(&STSClient::AssumeRoleWithWebIdentity, request, handler, context);
512 }
513
545
549 template <typename AssumeRootRequestT = Model::AssumeRootRequest>
550 Model::AssumeRootOutcomeCallable AssumeRootCallable(const AssumeRootRequestT& request) const {
551 return SubmitCallable(&STSClient::AssumeRoot, request);
552 }
553
558 template <typename AssumeRootRequestT = Model::AssumeRootRequest>
559 void AssumeRootAsync(const AssumeRootRequestT& request, const AssumeRootResponseReceivedHandler& handler,
560 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
561 return SubmitAsync(&STSClient::AssumeRoot, request, handler, context);
562 }
563
595 const Model::DecodeAuthorizationMessageRequest& request) const;
596
601 template <typename DecodeAuthorizationMessageRequestT = Model::DecodeAuthorizationMessageRequest>
603 const DecodeAuthorizationMessageRequestT& request) const {
604 return SubmitCallable(&STSClient::DecodeAuthorizationMessage, request);
605 }
606
611 template <typename DecodeAuthorizationMessageRequestT = Model::DecodeAuthorizationMessageRequest>
612 void DecodeAuthorizationMessageAsync(const DecodeAuthorizationMessageRequestT& request,
614 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
615 return SubmitAsync(&STSClient::DecodeAuthorizationMessage, request, handler, context);
616 }
617
647
652 template <typename GetAccessKeyInfoRequestT = Model::GetAccessKeyInfoRequest>
653 Model::GetAccessKeyInfoOutcomeCallable GetAccessKeyInfoCallable(const GetAccessKeyInfoRequestT& request) const {
654 return SubmitCallable(&STSClient::GetAccessKeyInfo, request);
655 }
656
661 template <typename GetAccessKeyInfoRequestT = Model::GetAccessKeyInfoRequest>
662 void GetAccessKeyInfoAsync(const GetAccessKeyInfoRequestT& request, const GetAccessKeyInfoResponseReceivedHandler& handler,
663 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
664 return SubmitAsync(&STSClient::GetAccessKeyInfo, request, handler, context);
665 }
666
682
687 template <typename GetCallerIdentityRequestT = Model::GetCallerIdentityRequest>
688 Model::GetCallerIdentityOutcomeCallable GetCallerIdentityCallable(const GetCallerIdentityRequestT& request = {}) const {
689 return SubmitCallable(&STSClient::GetCallerIdentity, request);
690 }
691
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);
701 }
702
713
718 template <typename GetDelegatedAccessTokenRequestT = Model::GetDelegatedAccessTokenRequest>
719 Model::GetDelegatedAccessTokenOutcomeCallable GetDelegatedAccessTokenCallable(const GetDelegatedAccessTokenRequestT& request) const {
720 return SubmitCallable(&STSClient::GetDelegatedAccessToken, request);
721 }
722
727 template <typename GetDelegatedAccessTokenRequestT = Model::GetDelegatedAccessTokenRequest>
728 void GetDelegatedAccessTokenAsync(const GetDelegatedAccessTokenRequestT& request,
730 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
731 return SubmitAsync(&STSClient::GetDelegatedAccessToken, request, handler, context);
732 }
733
825
830 template <typename GetFederationTokenRequestT = Model::GetFederationTokenRequest>
831 Model::GetFederationTokenOutcomeCallable GetFederationTokenCallable(const GetFederationTokenRequestT& request) const {
832 return SubmitCallable(&STSClient::GetFederationToken, request);
833 }
834
839 template <typename GetFederationTokenRequestT = Model::GetFederationTokenRequest>
840 void GetFederationTokenAsync(const GetFederationTokenRequestT& request, const GetFederationTokenResponseReceivedHandler& handler,
841 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
842 return SubmitAsync(&STSClient::GetFederationToken, request, handler, context);
843 }
844
899
903 template <typename GetSessionTokenRequestT = Model::GetSessionTokenRequest>
904 Model::GetSessionTokenOutcomeCallable GetSessionTokenCallable(const GetSessionTokenRequestT& request = {}) const {
905 return SubmitCallable(&STSClient::GetSessionToken, request);
906 }
907
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);
917 }
918
931
936 template <typename GetWebIdentityTokenRequestT = Model::GetWebIdentityTokenRequest>
937 Model::GetWebIdentityTokenOutcomeCallable GetWebIdentityTokenCallable(const GetWebIdentityTokenRequestT& request) const {
938 return SubmitCallable(&STSClient::GetWebIdentityToken, request);
939 }
940
945 template <typename GetWebIdentityTokenRequestT = Model::GetWebIdentityTokenRequest>
946 void GetWebIdentityTokenAsync(const GetWebIdentityTokenRequestT& request, const GetWebIdentityTokenResponseReceivedHandler& handler,
947 const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const {
948 return SubmitAsync(&STSClient::GetWebIdentityToken, request, handler, context);
949 }
950
951 virtual void OverrideEndpoint(const Aws::String& endpoint);
952 virtual std::shared_ptr<STSEndpointProviderBase>& accessEndpointProvider();
953
954 private:
956
958
959 InvokeOperationOutcome InvokeServiceOperation(const AmazonWebServiceRequest& request, Aws::Http::HttpMethod httpMethod) const;
960};
961
962} // namespace STS
963} // namespace Aws
Model::GetAccessKeyInfoOutcomeCallable GetAccessKeyInfoCallable(const GetAccessKeyInfoRequestT &request) const
Definition STSClient.h:653
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
Definition STSClient.h:662
virtual Model::GetAccessKeyInfoOutcome GetAccessKeyInfo(const Model::GetAccessKeyInfoRequest &request) const
Model::GetFederationTokenOutcomeCallable GetFederationTokenCallable(const GetFederationTokenRequestT &request) const
Definition STSClient.h:831
Model::AssumeRoleWithWebIdentityOutcomeCallable AssumeRoleWithWebIdentityCallable(const AssumeRoleWithWebIdentityRequestT &request) const
Definition STSClient.h:498
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
Definition STSClient.h:937
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
Definition STSClient.h:508
void AssumeRoleAsync(const AssumeRoleRequestT &request, const AssumeRoleResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Definition STSClient.h:221
void DecodeAuthorizationMessageAsync(const DecodeAuthorizationMessageRequestT &request, const DecodeAuthorizationMessageResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Definition STSClient.h:612
void GetCallerIdentityAsync(const GetCallerIdentityResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr, const GetCallerIdentityRequestT &request={}) const
Definition STSClient.h:697
virtual Model::AssumeRoleWithSAMLOutcome AssumeRoleWithSAML(const Model::AssumeRoleWithSAMLRequest &request) const
virtual std::shared_ptr< STSEndpointProviderBase > & accessEndpointProvider()
Model::AssumeRoleWithSAMLOutcomeCallable AssumeRoleWithSAMLCallable(const AssumeRoleWithSAMLRequestT &request) const
Definition STSClient.h:354
void GetFederationTokenAsync(const GetFederationTokenRequestT &request, const GetFederationTokenResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Definition STSClient.h:840
STSClientConfiguration ClientConfigurationType
Definition STSClient.h:68
Model::GetDelegatedAccessTokenOutcomeCallable GetDelegatedAccessTokenCallable(const GetDelegatedAccessTokenRequestT &request) const
Definition STSClient.h:719
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
Definition STSClient.h:66
void GetWebIdentityTokenAsync(const GetWebIdentityTokenRequestT &request, const GetWebIdentityTokenResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Definition STSClient.h:946
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
Definition STSClient.h:602
void GetSessionTokenAsync(const GetSessionTokenResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr, const GetSessionTokenRequestT &request={}) const
Definition STSClient.h:913
Model::AssumeRoleOutcomeCallable AssumeRoleCallable(const AssumeRoleRequestT &request) const
Definition STSClient.h:212
Model::AssumeRootOutcomeCallable AssumeRootCallable(const AssumeRootRequestT &request) const
Definition STSClient.h:550
Model::GetCallerIdentityOutcomeCallable GetCallerIdentityCallable(const GetCallerIdentityRequestT &request={}) const
Definition STSClient.h:688
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
Definition STSClient.h:559
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
Definition STSClient.h:904
void AssumeRoleWithSAMLAsync(const AssumeRoleWithSAMLRequestT &request, const AssumeRoleWithSAMLResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Definition STSClient.h:363
STSClient(const Aws::Client::ClientConfiguration &clientConfiguration)
virtual Model::AssumeRootOutcome AssumeRoot(const Model::AssumeRootRequest &request) const
STSEndpointProvider EndpointProviderType
Definition STSClient.h:69
void GetDelegatedAccessTokenAsync(const GetDelegatedAccessTokenRequestT &request, const GetDelegatedAccessTokenResponseReceivedHandler &handler, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &context=nullptr) const
Definition STSClient.h:728
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