Skip to main content

awscli-plugin-tls

A plugin for configuring TLS parameters advertised by awscli

This awscli plugin allows users to configure TLS versions and cipher suites used when connecting to AWS services via the CLI. It can additionally be used by boto3 applications to enable those configurations through their ~/.aws/config.

Most users will not need this plugin, as the urllib3 utilizes secure defaults for these settings.

Disclaimer

You are responsible for properly configuring this plugin to ensure secure cipher suites are used when negotiating the TLS connection. Using this plugin, it is possible for clients to configure less-secure cipher suites than what is provided by default. Please only use this plugin if you have a requirement to enforce specific cipher suites or TLS versions in your applications, and are familiar with how to utilize OpenSSL's cipherlist to select cipher suites. Be sure to test and ensure you are not advertising insecure cipher suites before using in a production setting.

Installation

pip install .

Configuration

Edit your ~/.aws/config to include the following plugin definition:

If you are using the v1 AWS CLI, you can just add the plugin:

[plugins]
tls = awscli_plugin_tls

If you are using the v2 AWS CLI, you need to also specify the cli_legacy_plugin_path, which should specify where your pip packages are installed.

[plugins]
cli_legacy_plugin_path = <path to your python3.7/site-packages>
tls = awscli_plugin_tls

Additionally, under any profile (either a named profile or [default], configure the appropriate settings:

[default]
tls_ciphers = ECDHE+AES256+AESGCM
tls_version = 1.2
...other settings

Usage

AWS CLI

Once configured, you can use your AWS CLI as normal:

aws s3 ls

Boto3

You can also patch boto3 applications by calling the patch_botocore method directly:

import boto3
from awscli_plugin_tls import patch_botocore
patch_botocore()

s3 = boto3.client('s3')
print(s3.list_buckets())

If your boto3 application needs to use a named profile, you can pass in your own session object using that profile name:

import boto3
from awscli_plugin_tls import patch_botocore
session = botocore.session.Session(profile="your-named-profile")
patch_botocore(session)

s3 = boto3.client('s3')
print(s3.list_buckets())
botocore.session.Session(profile=profile)

Security

See CONTRIBUTING for more information.

License

This project is licensed under the Apache-2.0 License.

Metadata

Release files for awscli-plugin-tls 0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for awscli-plugin-tls 0.1
File Size Uploaded Provenance
awscli-plugin-tls-0.1.tar.gz 3.2 kB Without provenance Details

Release files / awscli-plugin-tls-0.1.tar.gz

Download URL awscli-plugin-tls-0.1.tar.gz
Size 3.2 kB
Tags Source
SHA-256 checksum
How to use checksums
43809a486247fe3ed69c6c6bc02acbc47d390dc0b690c7ee22e75973a641eea9
BLAKE2b-256 checksum
How to use checksums
ea1cbef481fc7731472cf63226ab26a285ad505b8cd578de7af602a056ce71ad
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.7.10

Security for awscli-plugin-tls 0.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release

0.1 This release

1 release file No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page