Search Shortcut cmd + k | ctrl + k
Search cmd+k ctrl+k
1.0 (stable)
AWS Extension

The aws extension adds functionality (e.g., authentication) on top of the httpfs extension's S3 capabilities, using the AWS SDK.

Installing and Loading

The aws extension will be transparently autoloaded on first use from the official extension repository. If you would like to install and load it manually, run:

INSTALL aws;
LOAD aws;

aws depends on httpfs extension capablities, and both will be autoloaded on the first call to load_aws_credentials. If autoinstall or autoload are disabled, you can always explicitly install and load them as follows:

INSTALL aws;
INSTALL httpfs;
LOAD aws;
LOAD httpfs;

Usage

In most cases, you will not need to explicitly interact with the aws extension. It will automatically be invoked whenever you use DuckDB's S3 Secret functionality. See the httpfs extension's S3 capabilities for instructions.

Legacy Features

Prior to version 0.10.0, DuckDB did not have a Secrets manager, to load the credentials automatically, the AWS extension provided a special function to load the AWS credentials in the legacy authentication method.

Function Type Description
load_aws_credentials PRAGMA function Loads the AWS credentials through the AWS Default Credentials Provider Chain.

Load AWS Credentials (Legacy)

To load the AWS credentials, run:

CALL load_aws_credentials();
loaded_access_key_id loaded_secret_access_key loaded_session_token loaded_region
AKIAIOSFODNN7EXAMPLE NULL us-east-2

The function takes a string parameter to specify a specific profile:

CALL load_aws_credentials('minio-testing-2');
loaded_access_key_id loaded_secret_access_key loaded_session_token loaded_region
minio_duckdb_user_2 NULL NULL

There are several parameters to tweak the behavior of the call:

CALL load_aws_credentials('minio-testing-2', set_region = false, redact_secret = false);
loaded_access_key_id loaded_secret_access_key loaded_session_token loaded_region
minio_duckdb_user_2 minio_duckdb_user_password_2 NULL NULL