The aws extension adds functionality (e.g., authentication) on top of the httpfs extension's S3 capabilities, using the AWS SDK.
Warning In most cases, you will not need to explicitly interact with the
awsextension. It will automatically be invoked whenever you use DuckDB's S3 Secret functionality. See thehttpfsextension's S3 capabilities for instructions.
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; Related Extensions
aws depends on httpfs extension capabilities, 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 httpfs as follows:
INSTALL httpfs; LOAD httpfs; Legacy Features
Deprecated The
load_aws_credentialsfunction is deprecated.
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 | <redacted> |  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 | <redacted> |  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 |