An aws-adfs spinoff that fits BYU's needs
Project description
Python script for CLI and SDK access to AWS via ADFS while requiring MFA access using https://duo.com/
Installation
Install Python 3.x using your preferred method.
See https://www.python.org/downloads/ for a windows installation method.
In linux you may be able to use apt, rpm or https://www.python.org/downloads/.
In Mac you can use homebrew, macports or https://www.python.org/downloads/.
Run pip3 install byu-awslogin
Usage
Run awslogin and it will prompt you for the AWS account and role to use.
Run awslogin --account <account name> --role <role name> to skip the prompting for account and name. You could specify just one of the arcuments as well.
Deploying changes
Make sure you have python 3 installed.
awslogin only works with python 3.
Enter your virtualenv using python 3.
Install twine by running pip install twine
Make sure you have a ‘~/.pypirc’ as defined here. See Paul for the login credentials.
Run python deploy.py
TODO
gracefully handle the error case when the duo push is rejected
Add support for profiles
Authenticate once for 8 hours and rerun awslogin to relogin
Simplify the adfs authentication code
cache netid after subsequent logins ie default to last used
Write tests
(David) adfs_auth.py
(Nate) index.py
roles.py
assume_role.py
Make a handel-codepipeline CI/CD pipeline with automated tests. If they pass automatically deploy to pypi.
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 byu_awslogin-0.9.7-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a9c8c86cd28553448ac694b15df850e7ffcac610648b19b580f561bdb97f15c6 |
|
MD5 | 7883d154055ae4654aa0ea2821127af8 |
|
BLAKE2b-256 | b9b49468fc2ee4e3156993f82e1ac1d92dc3303313208c013163ffae2ad8bf2f |