GitHunt
PI

piotrplenik/awssaml

Access to the AWS Management Console and AWS API for my Active Directory users using federation (AD FS).

Purpose

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.

Main features

  • Support AD FS 2 and AD FS 4
  • Allow to login to AWS Console
  • ALlow to generate AWS Access Key

Usage

Requirements

Installation

pip3 install awssaml

Configuration file

All configuration is stored in ~/.aws/config file.

Basic configuration

[samlapi]
identity_url = https://adfs.example.com/adfs/ls/IdpInitiatedSignOn.aspx?loginToRp=urn:amazon:webservices
region = eu-west-1
adfs_connection = ntlm

Advanced samlapi configuration

Use different ADFS connection methods
  • ntlm - Use NTLM authentication (default)
  • web_form - Use web form authentication
Set default username
[samlapi]
#...
username = [SAML User]

Default session duration

Setup 12 hours (it's 43200 seconds):

[samlapi]
#...
session_duration = 43200

Advanced profile configuration

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

Reference