Table of Contents

Namespace Amazon.Runtime

Classes

AWSCommonRuntimeException

Exception thrown for issues related to the AWS Common Runtime (CRT)

AWSCredentials

Abstract class that represents a credentials object for AWS services.

AWSRegion

Base class for determining region based on inspection.

AWSToken

Contains the metadata necessary for BearerTokenSigner to sign outgoing Api requests with an Authorization header.

AWSTokenProviderChain

Chain of IAWSTokenProvider. Providers are evaluated in order, and the first provider to return an AWSToken wins.

AmazonAccountIdException

Base exception for AccountId error.

AmazonClientException

Exception thrown by the SDK for errors that occur within the SDK.

AmazonDateTimeUnmarshallingException

This exception is thrown when there is a parse error on the response back from AWS.

AmazonServiceClient
AmazonServiceException

A base exception for some Amazon Web Services.

Most exceptions thrown to client code will be service-specific exceptions, though some services may throw this exception if there is a problem which is caught in the core client code.

AmazonUnmarshallingException

This exception is thrown when there is a parse error on the response back from AWS.

AmazonWebServiceRequest

Base class for request used by some of the services.

AmazonWebServiceResponse

Abstract class for Response objects, contains only metadata, and no result information.

AnonymousAWSCredentials

Anonymous credentials. Using these credentials, the client does not sign the request.

AppConfigAWSRegion

Determines region based on application configuration settings. If the configuration does not contain the region setting key an InvalidOperationException is thrown.

AssumeRoleAWSCredentials

AWS Credentials that automatically refresh by calling AssumeRole on the Amazon Security Token Service.

AssumeRoleAWSCredentialsOptions
AssumeRoleImmutableCredentials

Immutable representation of AWS credentials obtained as a result of authenticating with the AssumeRole method of the Security Token Service.

AssumeRoleWithWebIdentityCredentials

AWS Credentials that automatically refresh by calling AssumeRole on the Amazon Security Token Service.

AssumeRoleWithWebIdentityCredentialsOptions

Options for using a credentials object to make AssumeRoleWithWebIdentity calls.

BasicAWSCredentials

Basic set of credentials consisting of an AccessKey and SecretKey

BearerTokenSigner
ClientConfig

This class is the base class of all the configurations settings to connect to a service.

ConstantClass

Base class for constant class that holds the value that will be sent to AWS for the static constants.

CorrectClockSkew

Utility class that stores clock skew information.

CredentialRequestCallbackArgs

State class passed on callback to demand user credentials when authentication needs to be performed using a non-default identity.

DefaultAWSTokenProviderChain

Combines the recommended IAWSTokenProvider into a AWSTokenProviderChain.

Configuration parameters for each IAWSTokenProvider are exposed here to simplify configuration. Example below demonstrates how to build a custom DefaultAWSTokenProviderChain in a AWSTokenProvider. NOTE: The below example requires .NET 4.5 or above.
var exampleServiceClientConfig = new ExampleServiceClientConfig
{
   AWSTokenProvider = new DefaultAWSTokenProviderChain
   {
      ProfileName = "my-sso-profile"
   }
}
DefaultConfiguration
DoubleListParameterValue

Double list parameter value.

ECSTaskCredentials

When running in an ECS container and AWS_CONTAINER_CREDENTIALS_RELATIVE_URI is set, use the given end point to retrieve the credentials.

EnvironmentVariableAWSEndpointDiscoveryEnabled

Determines the endpoint discovery enabled value based on an environment variable. If no value is found in the environment then an InvalidOperationException is thrown.

EnvironmentVariableAWSRegion

Determines region based on an environment variable. If the environment does not contain the region setting key an InvalidOperationException is thrown.

EnvironmentVariablesAWSCredentials

Uses aws credentials stored in environment variables to construct the credentials object. AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY are used for the access key id and secret key. If the variable AWS_SESSION_TOKEN exists then it will be used to create temporary session credentials.

ExceptionEventArgs
FallbackCredentialsFactory
FallbackEndpointDiscoveryEnabledFactory

Probing mechanism to determine the endpoint discovery enabled value from various sources.

FallbackRegionFactory

Probing mechanism to determine region from various sources.

FederatedAWSCredentials

Temporary credentials that are created following successful authentication with a federated endpoint supporting SAML.

FederatedAWSCredentialsOptions

Options that control the behavior of FederatedAWSCredentials.

FederatedAuthenticationCancelledException

Custom exception type thrown when a role profile with user identity is used in conjunction with a credential request callback. This exception is thrown if the callback returns null, indicating the user declined to supply credentials.

FederatedAuthenticationFailureException

Custom exception type thrown when authentication for a user fails due to invalid credentials.

HeadersRequestEventArgs
HttpClientCache

A cache of HttpClient objects. The GetNextClient method does a round robin cycle through the clients to distribute the load even across.

HttpClientFactory

A factory which creates HTTP clients.

HttpRequestMessageFactory

A factory which creates HTTP requests which uses System.Net.Http.HttpClient.

HttpWebRequestMessage

HTTP request wrapper for System.Net.Http.HttpRequestMessage.

ImmutableCredentials

Immutable representation of AWS credentials.

InstanceProfileAWSCredentials

Credentials that are retrieved from the Instance Profile service on an EC2 instance

InstanceProfileAWSRegion

Determines region based on inspection of the instance metadata if running on an EC2 instance. If instance metadata cannot be read or does not contain region information an InvalidOperationException is thrown.

PaginatedResponse<TResponse>

An enumerable containing all of the responses for a paginated operation

PaginatedResultKeyResponse<TResponse, TResultKey>

An enumerable containing all of the Result Keys for a paginator

PaginatorUtils
ParameterValue

Abstract parameter value.

PreRequestEventArgs
ProcessAWSCredentialException

Exception class to capture all exceptions encountered when starting or executing the "credential_process" process. If the user has specified an executable and the SDK is unable to execute it, the exception should be surfaces to the user instead of moving on to the next credential provider.

ProcessAWSCredentials

Process Credentials can retrieve credentials by running a process and reading its stdout. A new config option, "credential_process" is added to the shared config file that allows customers to specify which process to run. The credentials retrieved by running this process could be either Basic or Session credentials.

ProfileAWSEndpointDiscoveryEnabled

Determines endpoint discovery enabled based on a CredentialProfile stored in an ICredentialProfileSource. If the profile doesn't exist or there is no endpoint discovery enabled information an InvalidOperationException is thrown.

ProfileAWSRegion

Determines region based on a CredentialProfile stored in an ICredentialProfileSource. If the profile doesn't exist or there is no region information an InvalidOperationException is thrown.

ProfileTokenProvider

Looks for a AWS Profile and then passes token resolution to SSOTokenProvider.

This provider requires .NET 4.5 or newer.
RefreshingAWSCredentials

Abstract class for automatically refreshing AWS credentials

RefreshingAWSCredentials.CredentialsRefreshState

Refresh state container consisting of credentials and the date of the their expiration

RequestEventArgs
ResponseEventArgs
ResponseMetadata

Information about the request.

RetryPolicy

A retry policy specifies all aspects of retry behavior. This includes conditions when the request should be retried, checks of retry limit, preparing the request before retry and introducing delay (backoff) before retries.

RetryableDetails

Class containing the retryable details for an AmazonServiceException

SAMLImmutableCredentials

Immutable representation of AWS credentials obtained as a result of authenticating against a SAML-supporting federated identity provider.

SSOAWSCredentials

AWS Credentials that resolve using AWS SSO.

SSOAWSCredentialsOptions
SSOImmutableCredentials

Immutable representation of AWS credentials obtained as a result of authenticating through AWS SSO.

SSOTokenProvider

Looks in Amazon.Runtime.SSOTokenProvider._ssoCacheDirectory for a file that matches Amazon.Runtime.SSOTokenProvider._sessionName and then loads the SSO Token from that file.

SSOTokenProviderFactory
SessionAWSCredentials

Session credentials consisting of AccessKey, SecretKey and Token

SignatureException

This exception is thrown if there are problems signing the request.

SsoVerificationArguments
StaticTokenProvider
StoredProfileAWSCredentials

Credentials that are retrieved using a stored profile.

Unless otherwise specified priority is given to loading credentials from the SDK credential store file which is shared between the SDK, PowerShell CLI and Toolkit. Credentials in profiles in this file are encrypted and can only be used by the user account on the current machine that stored the profile. Credentials can also be loaded from the plain-text ini-format credential file which is shared with other AWS SDKs. This file is expected to exist in a '.aws' folder in the user's home directory but alternate locations can be specified using either the AWSProfilesLocation setting in the application configuration file, or by using the AWS_SHARED_CREDENTIALS_FILE environment variable.

The profile name can be specified in the App.config using the AWSProfileName setting.

StoredProfileCredentials

Helper routiners for AWS and Federated credential profiles. Probes the profile type for the supplied profile name and returns the appropriate profile instance.

StreamTransferProgressArgs
StringListParameterValue

String list parameter value.

StringParameterValue

String parameter value.

TryResponse<T>

Helper class to support a TryGetFoo(out var foo) pattern for async operations. This is necessary because async methods do not support output parameters.

URIBasedRefreshingCredentialHelper
URIBasedRefreshingCredentialHelper.SecurityBase
URIBasedRefreshingCredentialHelper.SecurityCredentials
URIBasedRefreshingCredentialHelper.SecurityInfo
WebServiceExceptionEventArgs
WebServiceRequestEventArgs
WebServiceResponseEventArgs

Interfaces

IAWSTokenProvider
IAmazonService

All Amazon service interfaces like IAmazonS3 extend from this interface. This allows all the Amazon service interfaces be identified by this base interface and helps with generic constraints.

IAsyncExecutionContext
IAsyncRequestContext
IAsyncResponseContext
IClientConfig

This interface is the read only access to the ClientConfig object used when setting up service clients. Once service clients are initiated the config object should not be changed to avoid issues with using a service client in a multi threaded environment.

IDefaultConfiguration

A defaults mode determines how certain default configuration options are resolved in the SDK. Based on the provided mode, the SDK will vend sensible default values tailored to the specific DefaultConfigurationMode.

All options above can be configured by users, and the overridden value will take precedence.

Note: for any mode other than Legacy, the vended default values might change as best practices may evolve. As a result, it is encouraged to perform testing when upgrading the SDK if you are using a mode other than Legacy.

While the Legacy defaults mode is specific to .NET, other modes are standardized across all of the AWS SDKs.

The defaults mode can be configured:
  1. When constructing an AmazonServiceClient implementation by setting DefaultConfigurationMode.
  2. Globally via the "AWS_DEFAULTS_MODE" environment variable.
  3. On a configuration profile via the "defaults_mode" profile file property.
IExceptionHandler

The interface for an exception handler.

IExceptionHandler<T>

The interface for an exception handler with a generic parameter for the exception type.

IExecutionContext
IHttpRequestFactory<TRequestContent>

The interface for a HTTP request factory.

IHttpRequest<TRequestContent>

The interface for an HTTP request that is agnostic of the underlying HTTP API.

ILogMessage

Interface for a single logged message.

IMetricsFormatter

User supplied type to perform metrics formatting.

IMetricsTiming

Represents how long a phase of an SDK request took.

IPaginatedEnumerable<TResult>

Interface for enumerables consumed by the customer to read responses or result keys

IPaginator<TResponse>

Interface for operation paginators

IPipelineHandler

Interface for a handler in a pipeline.

IRequestContext
IRequestMetrics

Metrics collected by the SDK on a per-request basis.

IResponseContext
ISSOTokenProviderFactory

Enums

ChecksumValidationStatus

States for response checksum validation

CoreChecksumAlgorithm

Algorithms for validating request and response integrity for supported operations. These are the algorithms support by the .NET SDK, a given service may only use a subset of these.

CoreChecksumResponseBehavior

Behavior to be used for verifying the checksum of response content that may be returned by supported service operations.

DefaultConfigurationMode

Enumeration of the supported Default Configurations available to to AmazonServiceClient objects.

EC2MetadataServiceEndpointMode

EC2MetadataServiceEndpointMode determines the internet protocol version to be used for communicating with the EC2 Instance Metadata Service

ErrorType

Which end of a request was responsible for a service error response.

Metric

Predefined request metrics that are collected by the SDK.

RequestRetryMode

RetryMode determines which request retry mode is used for requests that do not complete successfully.

S3UsEast1RegionalEndpointValue

S3 US East 1 endpoint value determines wheter or not to send the us-east-1 s3 requests to the regional endpoint or to the legacy global endpoint

SignatureVersion

SignatureVersion determines which signature version is used for the request

SigningAlgorithm

The valid hashing algorithm supported by the sdk for request signing.

StsRegionalEndpointsValue

Sts Regional Endpoints Value determines whether or not to send the sts request to the regional endpoint or to the global sts endpoint

Delegates

ExceptionEventHandler
FallbackCredentialsFactory.CredentialsGenerator
PreRequestEventHandler
RequestEventHandler
ResponseEventHandler