Skip to main content

Authentication based on the ENVAUTH environment variable

Project description

Super simple authentication middleware for when you quickly need to password protect something and don’t have the time to implement rigorous authentication. Supports Flask, bottle, Django and generic WSGI servers out of the box.

$ENVAUTH

envauth looks for a JSON object in the ENVAUTH environment variable. The keys are the usernames and the value contains the password for the user.

{"username": "password", "anotheruser": "pass1234"}

Heroku Example

envauth is especially useful if you happen to be running your application on a PAAS!

$ heroku config:set ENVAUTH='{"username": "password", "anotheruser": "pass1234"}'
Setting config vars and restarting application... done, v2

Examples

pypi

Flask

import envauth

@app.route('/secret-page')
@envauth.flask.requires_auth(realm='You shall not pass!')
def secret_page():
    return render_template('secret_page.html')

Bottle

import envauth

@app.route('/secret-page')
@envauth.bottle.requires_auth(realm='You shall not pass!')
def secret_page():
    return template('secret_page.html')

Django

MIDDLEWARE_CLASSES += ('envauth.django',)

WSGI

import envauth

application = envauth.wsgi(application, realm='You shall not pass!')

Installation

Install envauth with pip:

$ pip install envauth

Project details


Release history Release notifications

This version
History Node

1.0.1

History Node

1.0.0

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
envauth-1.0.1.tar.gz (3.6 kB) Copy SHA256 hash SHA256 Source None Feb 26, 2014

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page