AWS SDK Version 4 for .NET
API Reference

AWS services or capabilities described in AWS Documentation may vary by region/location. Click Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.

Abstract class for automatically refreshing AWS credentials

Inheritance Hierarchy

System.Object
  Amazon.Runtime.Identity.BaseIdentity
    Amazon.Runtime.AWSCredentials
      Amazon.Runtime.RefreshingAWSCredentials

Namespace: Amazon.Runtime
Assembly: AWSSDK.Core.dll
Version: 3.x.y.z

Syntax

C#
public abstract class RefreshingAWSCredentials : AWSCredentials
         IDisposable

The RefreshingAWSCredentials type exposes the following members

Properties

NameTypeDescription
Public Property Expiration System.Nullable<System.DateTime>

The time after which this identity will no longer be valid. If this is null, an expiration time is not known (for example, when using long-term credentials).

Public Property ExpirationBuffer System.TimeSpan

The time subtracted from the expiration provided by the credentials provider and then used for determining if the credentials are expired. This provides a buffer to avoid corner case issues of processing time on the client side before the credentials are actually used for signing and validation on the server side.

Public Property PreemptExpiryTime System.TimeSpan

If credentials are still valid but the expiration is within the Expiration minus PreemptExpiryTime a background refresh of the credentials will be triggered.

Methods

Note:

Asynchronous operations (methods ending with Async) in the table below are for .NET 4.7.2 or higher.

NameDescription
Public Method ClearCredentials()

Clears currently-stored credentials, forcing the next GetCredentials call to generate new credentials.

Public Method Dispose()
Public Method GetCredentials()

GetCredentials may refresh credentials if the credentials are in the pre-empt expiration window. This will trigger a background refresh of the credentials and could force an update to the credentials and to the expiration. Users should not rely on the Amazon.Runtime.RefreshingAWSCredentials.Expiration property before calling Amazon.Runtime.RefreshingAWSCredentials.GetCredentials because the Amazon.Runtime.RefreshingAWSCredentials.Expiration could be updated.

Public Method GetCredentialsAsync()

GetCredentialsAsync may refresh credentials if the credentials are in the pre-empt expiration window. This will trigger a background refresh of the credentials and could force an update to the credentials and to the expiration. Users should not rely on the Amazon.Runtime.RefreshingAWSCredentials.Expiration property before calling Amazon.Runtime.RefreshingAWSCredentials.GetCredentialsAsync because the Amazon.Runtime.RefreshingAWSCredentials.Expiration could be updated.

Version Information

.NET:
Supported in: 8.0 and newer, Core 3.1

.NET Standard:
Supported in: 2.0

.NET Framework:
Supported in: 4.7.2 and newer