Magic credentials on the AWS CLI home using AWS SSO login
Project description
aws-sso-magic tool cli
This tool update the aws credentials file for the default profile from the aws sso login.
This solution mixed the following repositories:
- aws-sso-util AWS SSO has some rough edges, and aws-sso-util is here to smooth them out, hopefully temporarily until AWS makes it better.
- aws-sso-credentials A simple Python tool to simplify getting short-term credential tokens for CLI/Boto3 operations when using AWS SSO.
Content of the repository
- src - The main folder with the aws_sso_magic folder with the .py files & the requirements.txt.
- docker-build.sh - A docker build tool (Linux/MacOS) to build the docker image locally.
sudo ./docker-build.sh
- pyproject.toml - The metadata file with the dependencies and application information.
- Dockerfile - The docker file with the instructions to build the aws-sso-magic cli.
- eks-login - A script tool to add on the /usr/local/bin (Only for linux/macOS or Windows WSL).
eks-login develop-readonly
NOTE: I got this interesting repo of marianonamoroso, He developed an awesome shell script to get information from the eks cluster, for more details click on https://github.com/marianonamoroso/kubernetes, and heyy give to him an star :).
Installation
Using pyp installer
- Prerequisites
- Python 3.9 installed.
- AWS CLI v2 installed, please click on the link depending of your OS.
- Installation
-
Follow the pyp aw-sso-magic project instructions to install it.
Note: If you want upgrade it, please run this
pip install aws-sso-magic --upgrade
Using Docker
- Please follow the instructions from the docker hub repository of aws_sso_magic
Configuration Instructions
These steps will create the config files on the paths $HOME/.aws and $HOME/.aws-sso-magic.
- Execute the following command to configure the sso tool:
aws-sso-magic configure
- Type the following information:
- SSO start URL
- SSO Region
- Select the default profile of SSO
- CLI default client Region
- CLI default output format
- CLI profile name. Eg: default
- Enter only the name of the proxy role to use by default. Eg: MyAdminRole or just press Enter (This option will mandatory for the --eks flag)
- Optional: In case that you want to set an account alias, you can modify the file on $HOME/.aws-sso-magic/config adding the [AliasAccounts] section with key (account name) and value (alias account) Eg:
making the above configuration, it will now show the aliases in the profile selection menu when aws-sso-magic login command is executed.[AliasAccounts] test1 = dev test2 = qa test3 = staging test4 = prod
[?] Please select an AWS config profile: dev-admin > qa-admin staging-admin prod-admin
How to use it
- Execute the following command to select and log into the aws accounts:
aws-sso-magic login
- Execute the following command to log:
aws-sso-magic login
and select the profile to use oraws-sso-magic login --profile ssoprofile
if you already know the profile name.
NOTE: If you don't want to copy the credentials to the default profile, you can use the --custom-profile flag to create the profile with the name that you prefer and copy the credentials there.
Eg: aws-sso-magic login --profile ssoprofile --custom-profile myprofile
How to use it for eks support
- Prerequisites
- kubectl installed.
aws-sso-magic login
oraws-sso-magic login --profile myprofile
executed previouly.
- Instructions
-
Go to the file $HOME/.aws-sso-magic/config and replace the string "replacethis" on the section default-proxy-role-name if you want to use that role name for all profiles.
[default-proxy-role-name] proxy_role_name = replacethis
or just add the profile section in the file. Eg:
[myprofile] proxy_role_name = myrolename
-
Execute the following command to select and log the eks cluster:
aws-sso-magic login --eks
or if you have configured an aws account as trusted entity having granted to assume roles on the rest of the accounts from there, please executeaws-sso-magic login
selecting profile (account and role configured as trusted identity) and then executeaws-sso-magic login --eks --eks-profile env-eks-profile
. Eg:aws-sso-magic login --profile main-admin aws-sso-magic login --eks --eks-profile qa-admin
-
Please select the EKS cluster or send the cluster name using the flag --cluster. Eg:
aws-sso-magic login --eks --cluster myekscluster
-
Copy and paste the commands according to your OS.
NOTE: If you will select another profile, please first unset the AWS_PROFILE environment variable or close this terminal and open a new one
Links
- pypi.org
- Docker Hub
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
File details
Details for the file aws_sso_magic-1.0.36.tar.gz
.
File metadata
- Download URL: aws_sso_magic-1.0.36.tar.gz
- Upload date:
- Size: 20.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.16
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | df8d9cb087733c0495fdbb8245e0764cf8c9c28d347cca2c7d2bc9abe095767a |
|
MD5 | 97eb31f16e6cb75b2b148ed63980694c |
|
BLAKE2b-256 | 807924c177cfc6e7a2f10c55edd08d8c29495844c254a72d8e6b0a111020a911 |
File details
Details for the file aws_sso_magic-1.0.36-py3-none-any.whl
.
File metadata
- Download URL: aws_sso_magic-1.0.36-py3-none-any.whl
- Upload date:
- Size: 24.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.16
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ec202b1857e6b2804e4273150e87fb06aeb1049948f4231915c80589aa208199 |
|
MD5 | c91d7abd214d210c7252dfba7d599084 |
|
BLAKE2b-256 | ad432ab3ed9ac1b1d7029256c27bdc12fe7af9b509abf0780d40e745ccdf1251 |