aws-easy-sso
is a simple tool to login to your AWS accounts using SSO. So of course it just works if you have configured SSO in you organization.
The tool uses the SSO and OIDC SDK to fetch available accounts and roles for your login and appends the session and profile configuration to your ~/.aws/config
. It also places the authentication information it used itself in the ~/.aws/sso/cache
directory. These cached sessions are used by the newer credential provider implementations of AWS SDKs. The tool also supports usage of multiple sso sessions (combinations of sso_start_url
and sso_region
). For personal learning, the tool is written in Rust.
This tool is build on top of the sso-session feature of the AWS CLI. So you need install a version that already supports this. To be sure simply update to the latest CLI version.
$ cargo install aws-easy-sso
# To allow the program to export variables to the 'outer' env,
# the actual scripts need to be sourced
$ echo 'alias aws-easy-sso="source _aws-easy-sso"' >> ~/.zshrc
# To allow the program to export variables to the 'outer' env,
# the actual scripts need to be sourced
$ echo 'alias aws-easy-sso="source _aws-easy-sso"' >> ~/.bashrc
Windows is no supported currently.
There are plenty of alternatives that worked for me in the past: