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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for assumerole-0.6.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | df40cfe97697ae9528d75372d3b0e15e6b5daa627bfa1bbabe1bc4cdf0f46ecd |
|
MD5 | ee82b6acf1f3a3503c508a7d23d61dfb |
|
BLAKE2b-256 | 03bf8048aa676d94076dc345c7f05d84f43e53aba341c9a03e16ff5ef59d8bb4 |