An aws-adfs spinoff that fits BYU's needs
Project description
# awslogin
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`
## Deploying changes
* Make sure you have python 3 installed.
* awslogin only works with python 3.
* Enter your [virtualenv](https://virtualenv.pypa.io/en/stable/) using python 3.
* Install twine by running `pip install twine`
* Make sure you have a '~/.pypirc' file with the following contents
```
index-servers =
pypi
[pypi]
username: byu-oit-appdev
password: <the appropriate password>
```
* Remove the old dist directory `rm -fr dist`
* Install the dependencies by running `pip install -r requirements.txt`
* Update the version in setup.py
* Build the installable artifacts by running `python setup.py sdist bdist_wheel`
* Send the new version to pypy by running `twine upload dist/*`
## TODO
* (Josh) Alphabetize the account names and roles
* Final login message after selecting role specifying you have been logged into this role on this account
* gracefully handle the error case when the duo push is rejected
* Add support for profiles
* Add flags for account and role
* Authenticate once for 8 hours and rerun `awslogin` to relogin
* (Brett) Maybe add a select account then select role interactive method
* Simplify the adfs authentication code
* cache netid after subsequent logins ie default to last used
* Make a handel-codepipeline CI/CD pipeline with automated tests. If they pass automatically deploy to pypi.
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`
## Deploying changes
* Make sure you have python 3 installed.
* awslogin only works with python 3.
* Enter your [virtualenv](https://virtualenv.pypa.io/en/stable/) using python 3.
* Install twine by running `pip install twine`
* Make sure you have a '~/.pypirc' file with the following contents
```
index-servers =
pypi
[pypi]
username: byu-oit-appdev
password: <the appropriate password>
```
* Remove the old dist directory `rm -fr dist`
* Install the dependencies by running `pip install -r requirements.txt`
* Update the version in setup.py
* Build the installable artifacts by running `python setup.py sdist bdist_wheel`
* Send the new version to pypy by running `twine upload dist/*`
## TODO
* (Josh) Alphabetize the account names and roles
* Final login message after selecting role specifying you have been logged into this role on this account
* gracefully handle the error case when the duo push is rejected
* Add support for profiles
* Add flags for account and role
* Authenticate once for 8 hours and rerun `awslogin` to relogin
* (Brett) Maybe add a select account then select role interactive method
* Simplify the adfs authentication code
* cache netid after subsequent logins ie default to last used
* 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
byu_awslogin-0.9.4.tar.gz
(7.2 kB
view hashes)
Built Distribution
Close
Hashes for byu_awslogin-0.9.4-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4e890149a26469f018c2a61711612fc61ad5b52049624e9b329efa6bfc17ce61 |
|
MD5 | 73cb19b304ebe15e10096fd76c0339b3 |
|
BLAKE2b-256 | d7de8df7ba8e7b17d9278cb6f6e61e9a87fb4f960036b45fac44fbbba51ffb93 |