Dual-stack and FIPS endpoints - AWS SDKs and Tools

Dual-stack and FIPS endpoints

Configure this functionality by using the following:

use_dualstack_endpoint - shared AWS config file setting
AWS_USE_DUALSTACK_ENDPOINT - environment variable
aws.useDualstackEndpoint - JVM system property: Java/Kotlin only

Turns on or off whether the SDK will send requests to dual-stack endpoints. To learn more about dual-stack endpoints, which support both IPv4 and IPv6 traffic, see Using Amazon S3 dual-stack endpoints in the Amazon Simple Storage Service User Guide. Dual-stack endpoints are available for some services in some regions.

Default value: false

Valid values:

  • true – The SDK or tool will attempt to use dual-stack endpoints to make network requests. If a dual-stack endpoint does not exist for the service and/or AWS Region, the request will fail.

  • false – The SDK or tool will not use dual-stack endpoints to make network requests.

use_fips_endpoint - shared AWS config file setting
AWS_USE_FIPS_ENDPOINT - environment variable
aws.useFipsEndpoint - JVM system property: Java/Kotlin only

Turns on or off whether the SDK or tool will send requests to FIPS-compliant endpoints. The Federal Information Processing Standards (FIPS) are a set of US Government security requirements for data and its encryption. Government agencies, partners, and those wanting to do business with the federal government are required to adhere to FIPS guidelines. Unlike standard AWS endpoints, FIPS endpoints use a TLS software library that complies with FIPS 140-2. If this setting is enabled and a FIPS endpoint does not exist for the service in your AWS Region, the AWS call may fail. Service-specific endpoints and the --endpoint-url option for the AWS Command Line Interface override this setting.

To learn more about other ways to specify FIPS endpoints by AWS Region, see FIPS Endpoints by Service. For more information on Amazon Elastic Compute Cloud service endpoints, see Dual-stack (IPv4 and IPv6) endpoints in the Amazon EC2 API Reference.

Default value: false

Valid values:

  • true – The SDK or tool will send requests to FIPS-compliant endpoints.

  • false – The SDK or tool will not send requests to FIPS-compliant endpoints.

Compatibility with AWS SDKs

The following SDKs support the features and settings described in this topic. Any partial exceptions are noted. Any JVM system property settings are supported by the AWS SDK for Java and the AWS SDK for Kotlin only.

SDK Supported Notes or more information
AWS CLI v2 Yes
SDK for C++ Yes
SDK for Go V2 (1.x) Yes
SDK for Go 1.x (V1) Yes To use shared config file settings, you must turn on loading from the config file; see Sessions.
SDK for Java 2.x Yes
SDK for Java 1.x No
SDK for JavaScript 3.x Yes
SDK for JavaScript 2.x Yes
SDK for Kotlin Yes
SDK for .NET 3.x Yes
SDK for PHP 3.x Yes
SDK for Python (Boto3) Yes
SDK for Ruby 3.x Yes
SDK for Rust Yes
Tools for PowerShell Yes