AWSAuth.Credentials (AWSAuth v1.3.1)
View SourceAWS credentials struct for authentication.
This struct holds AWS credentials for signing requests. It can be created manually or loaded from environment variables.
Fields
:access_key_id- AWS Access Key ID (required):secret_access_key- AWS Secret Access Key (required):session_token- AWS Session Token for temporary credentials (optional):region- AWS region (optional, defaults to "us-east-1")
Examples
# Create credentials manually
creds = %AWSAuth.Credentials{
access_key_id: "AKIAIOSFODNN7EXAMPLE",
secret_access_key: "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY",
region: "us-east-1"
}
# Load from environment variables
creds = AWSAuth.Credentials.from_env()
# Load from environment with fallback
creds = AWSAuth.Credentials.from_env() || %AWSAuth.Credentials{
access_key_id: "...",
secret_access_key: "..."
}Environment Variables
from_env/0 reads the following environment variables:
AWS_ACCESS_KEY_ID- Access key IDAWS_SECRET_ACCESS_KEY- Secret access keyAWS_SESSION_TOKEN- Session token (optional)AWS_REGIONorAWS_DEFAULT_REGION- Region (optional)
Summary
Functions
Creates credentials from environment variables.
Creates credentials from a keyword list or map.
Types
Functions
@spec from_env() :: t() | nil
Creates credentials from environment variables.
Returns nil if required environment variables are not set.
Examples
# With environment variables set
System.put_env("AWS_ACCESS_KEY_ID", "AKIAIOSFODNN7EXAMPLE")
System.put_env("AWS_SECRET_ACCESS_KEY", "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY")
System.put_env("AWS_REGION", "us-west-2")
creds = AWSAuth.Credentials.from_env()
# => %AWSAuth.Credentials{
# access_key_id: "AKIAIOSFODNN7EXAMPLE",
# secret_access_key: "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY",
# region: "us-west-2",
# session_token: nil
# }
# Without required environment variables
System.delete_env("AWS_ACCESS_KEY_ID")
AWSAuth.Credentials.from_env()
# => nil
Creates credentials from a keyword list or map.
Examples
AWSAuth.Credentials.from_map(%{
access_key_id: "AKIAIOSFODNN7EXAMPLE",
secret_access_key: "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY",
region: "us-east-1"
})