Skip to main content

Flask-HTTPAuth

Build status codecov

Simple extension that provides Basic, Digest and Token HTTP authentication for Flask routes.

Installation

The easiest way to install this is through pip.

pip install Flask-HTTPAuth

Basic authentication example

from flask import Flask
from flask_httpauth import HTTPBasicAuth
from werkzeug.security import generate_password_hash, check_password_hash

app = Flask(__name__)
auth = HTTPBasicAuth()

users = {
    "john": generate_password_hash("hello"),
    "susan": generate_password_hash("bye")
}

@auth.verify_password
def verify_password(username, password):
    if username in users and \
            check_password_hash(users.get(username), password):
        return username

@app.route('/')
@auth.login_required
def index():
    return "Hello, %s!" % auth.current_user()

if __name__ == '__main__':
    app.run()

Note: See the documentation for more complex examples that involve password hashing and custom verification callbacks.

Digest authentication example

from flask import Flask
from flask_httpauth import HTTPDigestAuth

app = Flask(__name__)
app.config['SECRET_KEY'] = 'secret key here'
auth = HTTPDigestAuth()

users = {
    "john": "hello",
    "susan": "bye"
}

@auth.get_password
def get_pw(username):
    if username in users:
        return users.get(username)
    return None

@app.route('/')
@auth.login_required
def index():
    return "Hello, %s!" % auth.username()

if __name__ == '__main__':
    app.run()

Resources

Download files

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

Source Distribution

flask_httpauth-4.8.1.tar.gz (39.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

flask_httpauth-4.8.1-py3-none-any.whl (9.7 kB view details)

Uploaded Python 3

File details

Details for the file flask_httpauth-4.8.1.tar.gz.

File metadata

  • Download URL: flask_httpauth-4.8.1.tar.gz
  • Upload date:
  • Size: 39.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for flask_httpauth-4.8.1.tar.gz
Algorithm Hash digest
SHA256 88499b22f1353893743c3cd68f2ca561c4ad9ef75cd6bcc7f621161cd0e80744
MD5 9852ab61596915170ed9f89969541078
BLAKE2b-256 ecf46957215e827021eeb7d8de9f59b1864d73933b04851e59272708cb6e5d2b

See more details on using hashes here.

File details

Details for the file flask_httpauth-4.8.1-py3-none-any.whl.

File metadata

  • Download URL: flask_httpauth-4.8.1-py3-none-any.whl
  • Upload date:
  • Size: 9.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for flask_httpauth-4.8.1-py3-none-any.whl
Algorithm Hash digest
SHA256 0080393d70e12327781f7509115175ec5e47209816489a620d4fd39e20cea2e8
MD5 77d5b9f075bd7b43c426c2846c5c9646
BLAKE2b-256 72da624c87bf6c13107ceab8ee23815d9468e47d89c7480c1dc9af39b08eb290

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

4.8.1 This release

2 files

4.8.0

2 files

4.7.0

2 files

4.6.0

2 files

4.5.0

2 files

4.4.0

2 files

4.3.0

2 files

4.2.0

2 files

4.1.0

2 files

4.0.0

2 files

3.3.0

2 files

3.2.4

2 files

3.2.3

2 files

3.2.2

1 file

3.2.1

1 file

3.2.0

1 file

3.1.2

1 file

3.1.1

1 file

3.1.0

1 file

3.0.2

1 file

3.0.1

1 file

3.0.0

1 file

2.7.2

1 file

2.7.1

1 file

2.7.0

1 file

2.6.0

1 file

2.5.0

1 file

2.4.0

1 file

2.3.0

1 file

2.2.1

1 file

2.2.0

1 file

2.1.0

1 file

2.0.0

1 file

1.1.0

1 file

1.0.0

1 file

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page