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 hashes)

Uploaded Source

Built Distribution

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

Uploaded Python 3

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