Skip to main content
Join the official 2019 Python Developers SurveyStart the survey!

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


Download files

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

Files for envauth, version 1.0.1
Filename, size File type Python version Upload date Hashes
Filename, size envauth-1.0.1.tar.gz (3.6 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

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