Skip to main content

A small CLI to help with creating AWS profile for MFA protected sessions

Project description

STS MFA CLI

CI Status Test coverage percentage

Poetry black pre-commit

PyPI Version Supported Python versions License

Creating temporary profiles for multi-factor auth (MFA) protected accounts using AWS STS is too hard. This is a small CLI that helps with that.

Installation

Via Homebrew:

brew install browniebroke/tap/stsmfa-cli

Via pip, pipx, or your favourite Python package manager:

pip install stsmfa-cli

Usage

The CLI is a simple command stsmfa that creates a profile for a temporary session protected by MFA.

Assuming your ~/.aws/credentials file looks like this:

[my-profile-name]
aws_access_key_id = AKIAXXXXX
aws_secret_access_key = xxxx
mfa_serial = arn:aws:iam::123456789010:mfa/first.last

When running, for example:

stsmfa --profile my-profile-name 123456

This will create a session using the MFA serial defined under my-profile-name with the one-time password 123456, and save the required AWS key, secret and token under as a new profile my-profile-name-mfa in you ~/.aws/credentials file.

Now to use that session, you just need to set AWS_PROFILE=my-profile-name-mfa.

If your MFA serial is defined under the default profile, you don't need to specify the --profile option.

Contributors ✨

Thanks goes to these wonderful people (emoji key):

Bruno Alla
Bruno Alla

💻 🤔 📖

This project follows the all-contributors specification. Contributions of any kind welcome!

Credits

This package was created with Copier and the browniebroke/pypackage-template project template.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

stsmfa_cli-0.1.13.tar.gz (5.6 kB view details)

Uploaded Source

Built Distribution

stsmfa_cli-0.1.13-py3-none-any.whl (6.1 kB view details)

Uploaded Python 3

File details

Details for the file stsmfa_cli-0.1.13.tar.gz.

File metadata

  • Download URL: stsmfa_cli-0.1.13.tar.gz
  • Upload date:
  • Size: 5.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.9.6 readme-renderer/37.3 requests/2.28.2 requests-toolbelt/0.10.1 urllib3/1.26.15 tqdm/4.65.0 importlib-metadata/6.1.0 keyring/23.13.1 rfc3986/2.0.0 colorama/0.4.6 CPython/3.10.10

File hashes

Hashes for stsmfa_cli-0.1.13.tar.gz
Algorithm Hash digest
SHA256 376ffe0544229c187c0cdfd5e0544a1abce0ba97060bdec2b4334573a99d1d31
MD5 2f1c13bf2a4d6dad11b8e1336c06698a
BLAKE2b-256 59b57bc6e7fa790d7f407415a494d5b09a8c6730cfb92ed6d8899c176865e59e

See more details on using hashes here.

File details

Details for the file stsmfa_cli-0.1.13-py3-none-any.whl.

File metadata

  • Download URL: stsmfa_cli-0.1.13-py3-none-any.whl
  • Upload date:
  • Size: 6.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.9.6 readme-renderer/37.3 requests/2.28.2 requests-toolbelt/0.10.1 urllib3/1.26.15 tqdm/4.65.0 importlib-metadata/6.1.0 keyring/23.13.1 rfc3986/2.0.0 colorama/0.4.6 CPython/3.10.10

File hashes

Hashes for stsmfa_cli-0.1.13-py3-none-any.whl
Algorithm Hash digest
SHA256 4940659408e6ba394dad7f74fe62688540f3c028edcf7bf12d674cc22ec8237b
MD5 65c2f93b742e5ed9a931aae701f6d82c
BLAKE2b-256 7155d6088c446b8e80447a2c82c4ce9d236d7b0f3ae252a285e398c3c2db8a91

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page