Skip to main content
Help us improve PyPI by participating in user testing. All experience levels needed!

Easy to integrate basic HTTP authentication for Flask apps

Project description

Flask-HTAuth provides Flask apps with easy to integrate basic HTTP authentication. The extension supports standard htpasswd files.

Installation

Install with the usual:

pip install flask-htauth

or download source from GitHub:

git clone https://github.com/tomekwojcik/flask-htauth.git
cd flask-htauth
python setup.py develop

Configuration

Flask-HTAuth uses the following settings:

  • HTAUTH_HTPASSWD_PATH - path to htpasswd file,
  • HTAUTH_REALM - authentication realm (defaults to Protected Area)

Example app

from flask import Flask, g
from flask.ext import htauth
import os

HTPASSWD = os.path.join(os.path.abspath(os.path.dirname(__file__)), 'htpasswd')

app = Flask(__name__)
app.config['HTAUTH_HTPASSWD_PATH'] = HTPASSWD
app.config['HTAUTH_REALM'] = 'Top Secret Area'

auth = htauth.HTAuth(app)

@app.route('/')
def app_index():
    return 'Hello, World!'

@app.route('/secret')
@htauth.authenticated
def app_secret():
    return 'Hello, ' + g.htauth_user + '!'

If the request is missing Authorization header or auth data is invalid the authenticated decorator will return response that will force the user agent to request authentication data from the user.

Features

  • Basic auth,
  • Support for MD5, SHA and crypt htpasswd password encrypting.

License

Flask-HTAuth is licensed under MIT License. See LICENSE for more details.

Credits

Flask-HTAuth is developed by BTHLabs. The extension was inspired by django-htauth. Uses MD5 crypt code from this snippet.

Project details


Release history Release notifications

This version
History Node

0.1.2

History Node

0.1.1

History Node

0.1

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
Flask-HTAuth-0.1.2.tar.gz (5.0 kB) Copy SHA256 hash SHA256 Source None Sep 15, 2012

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