jwt-generator

unix command line JWT generator.


License
Apache-2.0
Install
pip install jwt-generator==0.12.1

Documentation

A simple command line jwt token generator based on a rsa private key.

By default it will print a JWT token with iss, nbf and exp set which is signed by the private key in ~/.ssh/id_rsa.:

iss - will be set to the current user name
nbf - will be set to 1 minute in the past
exp - will be set to 30 minutes in the future.

You can override the default settings on the command line.

Options

--issuer TEXT of the token
--not-before INTEGER
  number of seconds before now the token is no longer valid
--expires-after INTEGER
  number of seconds after which the token is no longer valid
--private-key-file PATH
  the private key file to sign the token with
-A, --authorization-header
  print authorization header bearer token
--help Show this message and exit.

Example

To send the the authorization bearer token with curl, type:

curl -H "$(jwt-generator -A)" https://httpbin.org/headers

Install on MacOS

To install you MacOs you might run into trouble due to the dependency on cryptography. Type::

export LDFLAGS="-L/usr/local/opt/openssl/lib"
export CPPFLAGS="-I/usr/local/opt/openssl/include"
export PKG_CONFIG_PATH="/usr/local/opt/openssl/lib/pkgconfig"

before you do the pip install jwt-generator. See https://github.com/pyca/cryptography/issues/2692 for details.