Access to the AWS Management Console and AWS API for my Active Directory users using federation (AD FS 2). Use Keyring tool for store password.
- Support AD FS 2 and AD FS 4
- Allow to login to AWS Console
- ALlow to generate AWS Access Key
- Linux (tested on Ubuntu 19.04+) or Windows (tested on 10)
- Python 3 - latest version 3.x
- Python 2 backward compatible
- on Windows,
pycrypto
require Microsoft Visual C++ Build Tools
pip3 install awssaml
All configuration is stored in ~/.aws/config
file.
[samlapi]
identity_url = https://adfs.example.com/adfs/ls/IdpInitiatedSignOn.aspx?loginToRp=urn:amazon:webservices
region = eu-west-1
adfs_connection = ntlm
- ntlm - Use NTLM authentication (default)
- web_form - Use web form authentication
[samlapi]
#...
username = [SAML User]
Setup 12 hours (it's 43200 seconds):
[samlapi]
#...
session_duration = 43200
You can setup custom profiles to reuse. Sample configuration entry for profile:
[profile nonprod-application1]
role_arn = arn:aws:iam::[ID]:role/[role]
principal_arn = arn:aws:iam::[ID]:saml-provider/[provider]
source_profile = nonprod
session_duration = 43200
Usage:
> awssaml api nonprod-application1
> awssaml console nonprod-application1