Skip to main content

Python utility that allows users to perform aws assume-role operation between different profiles

Project description

assumerole

This python package was inspired by the GO implementation of assume-role. This utility makes it easier to switch between multiple AWS profiles.

Pre-requisite

  • aws sdk should be installed
  • aws credentials are provided under ~/.aws/credentials
  • all the aws profiles are created correctly under ~/.aws/config

This utility uses sts utility within the boto3 package. You can learn more about sts command under awscli

Installation:

pip install --index-url https://test.pypi.org/simple/ assumerole For updating existing package use pip install -U --index-url https://test.pypi.org/simple/ assumerole

Usage

assume --profile <aws-profile-name> or assume -p <aws-profile-name>

You may be prompted to pass your MFA code if its required

By default, the tokens returned are cached under the folder ~/.aws/cached_tokens Only if the token has expired, will new tokens be requested from AWS. You can also find a history of all successful commands in the file ~/.aws/assume_role_history

In case you do not want to use your cached tokens use the optional refresh parameter

assume --profile <aws-profile-name> --refresh or assume -p <aws-profile-name> -r

In case you do not want to set the expirty time on the token optional duration parameter Default is 8 hours and maximum value is 12 (set by AWS)

assume --profile <aws-profile-name> --duration 10 or assume -p <aws-profile-name> -d 10

TODO:

  • Perform comprehensive coverage testing. Once package is tested fully, it will be made available in pypi.org
  • In the meantime, do test it out and feel free to submit PRs

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

assumerole-0.6.2.tar.gz (4.9 kB view details)

Uploaded Source

Built Distribution

assumerole-0.6.2-py3-none-any.whl (5.4 kB view details)

Uploaded Python 3

File details

Details for the file assumerole-0.6.2.tar.gz.

File metadata

  • Download URL: assumerole-0.6.2.tar.gz
  • Upload date:
  • Size: 4.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.5 CPython/3.7.6 Darwin/20.3.0

File hashes

Hashes for assumerole-0.6.2.tar.gz
Algorithm Hash digest
SHA256 f1566ece70cc2fa1f30ac100f87dce81f9f09e4453934cab62c0165c4e3e0a5a
MD5 6048d8029e05a7bec9eeaeae5acc380c
BLAKE2b-256 91cb838e176ff0647ccf0059fb774a376a93a44738f42da6ae7aa8cee2708bfc

See more details on using hashes here.

File details

Details for the file assumerole-0.6.2-py3-none-any.whl.

File metadata

  • Download URL: assumerole-0.6.2-py3-none-any.whl
  • Upload date:
  • Size: 5.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.5 CPython/3.7.6 Darwin/20.3.0

File hashes

Hashes for assumerole-0.6.2-py3-none-any.whl
Algorithm Hash digest
SHA256 9985824afa7c310299d5996e23f62d61d704e9b3e6da565d19662261a9e2dfde
MD5 31d7c09c581663b1b6a06616fabc7432
BLAKE2b-256 4861cf7c29d75280df06bd5bd0fab4fd3e09730ed6e2fd40334667b03a3d1ab2

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