Metadata-Version: 2.1
Name: awscli-plugin-passtotp
Version: 1.0.2
Summary: 
Home-page: https://git.segundo.io/awscli-plugin-passtotp
License: GPL-3.0-or-later
Keywords: aws,aws-cli,boto3,pass,pass-otp
Author: Christian Segundo
Author-email: christian@segundo.com
Requires-Python: >=3.7,<4.0
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: System Administrators
Classifier: License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Requires-Dist: botocore (>=1.14.14,<2.0.0)
Project-URL: Documentation, https://git.segundo.io/awscli-plugin-passtotp/tree/README
Project-URL: Repository, https://git.segundo.io/awscli-plugin-passtotp
Description-Content-Type: text/plain

awscli-plugin-passtotp
======================

This plugin enables aws-cli to directly talk to pass to acquire an
OATH-TOTP code using the pass-otp extension.

Dependencies
------------

* pass
* pass-otp
* python
* aws-cli

Installation
------------

Building and installing awscli-plugin-passtotp requires a working
Python 3 installation.

a) To install it from a cloned repository:

    $ python3 -m pip install .

b) You can also install it directly from PyPi like this:

    $ python3 -m pip install awscli-plugin-passtotp

Enabling the plugin
-------------------

A new entry to the plugins section in your config (~/.aws/config)
must be added to enable the plugin:

    [plugins]
    passtotp = awscli_plugin_passtotp

If using aws-cli version 2 you must specify the path to where the
package was installed. You can use the following command to find
the right location:

    $ pip show awscli-plugin-passtotp | grep Location:

And then add the following to your config (~/.aws/config):

    [plugins]
    cli_legacy_plugin_path = /usr/local/lib/python3.10/dist-packages
    passtotp = awscli_plugin_passtotp

AWS CLI configuration
---------------------

Specify a path to a file in your passord-store in the profiles where
you want to use the plugin.

    [profile bar]
    mfa_path = foo/aws/bar
    ...

You can ensure you have a working pass-otp entry by running:

    $ pass otp foo/aws/bar

Where 'foo/aws/bar' is an entry added by 'pass otp', eg:

    $ pass otp insert foo/aws/bar

Usage
-----

Just use the aws command with a custom role and the plugin will
obtain the TOTP token from pass:

    $ aws s3 ls --profile myprofile
    2013-07-11 17:08:50 mybucket
    2013-07-24 14:55:44 mybucket2

Acknowledgements
----------------

This plugin was primarily based off the work of tommie-lie in
https://github.com/tommie-lie/awscli-plugin-yubikeytotp

