13 struct aws_signing_config_aws;
22 class ICredentialsProvider;
33 SigV4 = AWS_SIGNING_ALGORITHM_V4,
39 SigV4A = AWS_SIGNING_ALGORITHM_V4_ASYMMETRIC,
51 HttpRequestViaHeaders = AWS_ST_HTTP_REQUEST_HEADERS,
57 HttpRequestViaQueryParams = AWS_ST_HTTP_REQUEST_QUERY_PARAMS,
62 HttpRequestChunk = AWS_ST_HTTP_REQUEST_CHUNK,
76 namespace SignedBodyValue
120 None = AWS_SBHT_NONE,
165 const Crt::
String &GetRegion() const noexcept;
170 void SetRegion(const Crt::
String ®ion) noexcept;
175 const Crt::
String &GetService() const noexcept;
180 void SetService(const Crt::
String &service) noexcept;
185 DateTime GetSigningTimepoint() const noexcept;
190 void SetSigningTimepoint(const
DateTime &date) noexcept;
202 bool GetUseDoubleUriEncode() const noexcept;
208 void SetUseDoubleUriEncode(
bool useDoubleUriEncode) noexcept;
213 bool GetShouldNormalizeUriPath() const noexcept;
218 void SetShouldNormalizeUriPath(
bool shouldNormalizeUriPath) noexcept;
224 bool GetOmitSessionToken() const noexcept;
230 void SetOmitSessionToken(
bool omitSessionToken) noexcept;
246 void *GetShouldSignHeaderUserData() const noexcept;
251 void SetShouldSignHeaderUserData(
void *userData) noexcept;
257 const Crt::
String &GetSignedBodyValue() const noexcept;
266 void SetSignedBodyValue(const Crt::
String &signedBodyValue) noexcept;
282 uint64_t GetExpirationInSeconds() const noexcept;
287 void SetExpirationInSeconds(uint64_t expirationInSeconds) noexcept;
307 const
std::shared_ptr<
Credentials> &GetCredentials() const noexcept;
312 void SetCredentials(const
std::shared_ptr<
Credentials> &credentials) noexcept;
315 const struct aws_signing_config_aws *GetUnderlyingHandle() const noexcept;
321 struct aws_signing_config_aws m_config;
322 Crt::
String m_signingRegion;
323 Crt::
String m_serviceName;
324 Crt::
String m_signedBodyValue;
337 bool IsValid()
const override {
return true; }
342 virtual bool SignRequest(
343 const std::shared_ptr<Aws::Crt::Http::HttpRequest> &request,