AWS IoT Device SDK C++ v2: Aws::Crt::Auth Namespace Reference

AWS IoT Device SDK C++ v2 1.14.0 AWS IoT Device SDK C++ v2

Namespaces | Classes | Typedefs | Enumerations | Functions
Aws::Crt::Auth Namespace Reference

## Namespaces
namespace | SignedBodyValue

## Classes
class | AwsSigningConfig
class | Credentials
class | CredentialsProvider
struct | CredentialsProviderCachedConfig
struct | CredentialsProviderCallbackArgs
struct | CredentialsProviderChainConfig
struct | CredentialsProviderChainDefaultConfig
struct | CredentialsProviderDelegateConfig
struct | CredentialsProviderImdsConfig
struct | CredentialsProviderProfileConfig
struct | CredentialsProviderStaticConfig
struct | CredentialsProviderX509Config
struct | DelegateCredentialsProviderCallbackArgs
struct | HttpSignerCallbackData
class | ICredentialsProvider
class | IHttpRequestSigner
class | ISigningConfig
class | Sigv4HttpRequestSigner

## Typedefs
using | OnCredentialsResolved = std::function< void(std::shared_ptr< Credentials >, int errorCode)>
using | GetCredentialsHandler = std::function< std::shared_ptr< Credentials >()>
using | OnHttpRequestSigningComplete = std::function< void(const std::shared_ptr< Aws::Crt::Http::HttpRequest > &, int)>
using | ShouldSignHeaderCb = bool(*)(const Crt::ByteCursor *, void *)

## Enumerations
enum class | SigningConfigType { Aws = AWS_SIGNING_CONFIG_AWS }
enum class | SigningAlgorithm { SigV4 = AWS_SIGNING_ALGORITHM_V4 , SigV4A = AWS_SIGNING_ALGORITHM_V4_ASYMMETRIC }
enum class | SignatureType { HttpRequestViaHeaders = AWS_ST_HTTP_REQUEST_HEADERS , HttpRequestViaQueryParams = AWS_ST_HTTP_REQUEST_QUERY_PARAMS , HttpRequestChunk = AWS_ST_HTTP_REQUEST_CHUNK , HttpRequestEvent = AWS_ST_HTTP_REQUEST_EVENT }
enum class | SignedBodyHeaderType { None = AWS_SBHT_NONE , XAmzContentSha256 = AWS_SBHT_X_AMZ_CONTENT_SHA256 }

## Functions
static std::shared_ptr< ICredentialsProvider > | s_CreateWrappedProvider (struct aws_credentials_provider *raw_provider, Allocator *allocator)
static int | s_onDelegateGetCredentials (void *delegate_user_data, aws_on_get_credentials_callback_fn callback, void *callback_user_data)
static void | s_onDelegateShutdownComplete (void *user_data)
static void | s_http_signing_complete_fn (struct aws_signing_result *result, int errorCode, void *userdata)

## Typedef Documentation

## ◆ GetCredentialsHandler

using Aws::Crt::Auth::GetCredentialsHandler = typedef std::function<std::shared_ptr<Credentials>()>

Invoked when the native delegate credentials provider needs to fetch a credential.

## ◆ OnCredentialsResolved

using Aws::Crt::Auth::OnCredentialsResolved = typedef std::function<void(std::shared_ptr<Credentials>, int errorCode)>

Callback invoked by credentials providers when resolution succeeds (credentials will be non-null) or fails (credentials will be null)

## ◆ OnHttpRequestSigningComplete

using Aws::Crt::Auth::OnHttpRequestSigningComplete = typedef std::function<void(const std::shared_ptr<Aws::Crt::Http::HttpRequest> &, int)>

HTTP signing callback. The second parameter is an aws error code, The signing was successful iff the error code is AWS_ERROR_SUCCESS.

## ◆ ShouldSignHeaderCb

using Aws::Crt::Auth::ShouldSignHeaderCb = typedef bool (*)(const Crt::ByteCursor *, void *)

## Enumeration Type Documentation

## ◆ SignatureType

enum class Aws::Crt::Auth::SignatureType
| strong

What kind of AWS signature should be computed?

Enumerator
HttpRequestViaHeaders | A signature for a full http request should be computed, with header updates applied to the signing result.
HttpRequestViaQueryParams | A signature for a full http request should be computed, with query param updates applied to the signing result.
HttpRequestChunk | Compute a signature for a payload chunk.
HttpRequestEvent | Compute a signature for an event stream event. This option is not yet supported.

## ◆ SignedBodyHeaderType

enum class Aws::Crt::Auth::SignedBodyHeaderType
| strong

Controls if signing adds a header containing the canonical request's body value

Enumerator
None | Do not add a header
XAmzContentSha256 | Add the "x-amz-content-sha256" header with the canonical request's body value

## ◆ SigningAlgorithm

enum class Aws::Crt::Auth::SigningAlgorithm
| strong

Enumeration indicating what version of the AWS signing process we should use.

Enumerator
SigV4 | Standard AWS Sigv4 signing using a symmetric secret, per https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html
SigV4A | A variant of AWS Sigv4 signing that uses ecdsa signatures based on an ECC key, rather than relying on a shared secret.

## ◆ SigningConfigType

enum class Aws::Crt::Auth::SigningConfigType
| strong

RTTI indicator for signing configuration. We currently only support a single type (AWS), but we could expand to others in the future if needed.

Enumerator
Aws |

## Function Documentation

## ◆ s_CreateWrappedProvider()

static std::shared_ptr< ICredentialsProvider > Aws::Crt::Auth::s_CreateWrappedProvider | ( | struct aws_credentials_provider * | raw_provider,
|  | Allocator * | allocator
| ) |  |
| static

## ◆ s_http_signing_complete_fn()

static void Aws::Crt::Auth::s_http_signing_complete_fn | ( | struct aws_signing_result * | result,
|  | int | errorCode,
|  | void * | userdata
| ) |  |
| static

## ◆ s_onDelegateGetCredentials()

static int Aws::Crt::Auth::s_onDelegateGetCredentials | ( | void * | delegate_user_data,
|  | aws_on_get_credentials_callback_fn | callback,
|  | void * | callback_user_data
| ) |  |
| static

## ◆ s_onDelegateShutdownComplete()

static void Aws::Crt::Auth::s_onDelegateShutdownComplete | ( | void * | user_data | ) |
| static