Sanic-Auth implements a minimal backend agnostic session-based user authentication mechanism for Sanic.
Quick Start
Installation
pip install --upgrade Sanic-Auth
How to use it
from sanic_auth import Auth
from sanic import Sanic, response
app = Sanic(__name__)
app.config.AUTH_LOGIN_ENDPOINT = 'login'
@app.middleware('request')
async def add_session_to_request(request):
# setup session
auth = Auth(app)
@app.route('/login', methods=['GET', 'POST'])
async def login(request):
message = ''
if request.method == 'POST':
username = request.form.get('username')
password = request.form.get('password')
# fetch user from database
user = some_datastore.get(name=username)
if user and user.check_password(password):
auth.login_user(request, user)
return response.redirect('/profile')
return response.html(HTML_LOGIN_FORM)
@app.route('/logout')
@auth.login_required
async def logout(request):
auth.logout_user(request)
return response.redirect('/login')
@app.route('/profile')
@auth.login_required(user_keyword='user')
async def profile(request, user):
return response.json({'user': user})
For more details, please see documentation.
License
BSD New, see LICENSE for details.
Links
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Sanic-Auth-0.3.0.tar.gz
(11.7 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file Sanic-Auth-0.3.0.tar.gz.
File metadata
- Download URL: Sanic-Auth-0.3.0.tar.gz
- Upload date:
- Size: 11.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/3.2.0 pkginfo/1.6.1 requests/2.25.1 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.8.7rc1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
280534eba4bbd063b5854450ad6d27f8be7f905ce981e9f7e3586589ad278235
|
|
| MD5 |
6c46c53cf25d10f1f78c05997f96de93
|
|
| BLAKE2b-256 |
29eaf615954b5c48c01d031e3c3fdae37b3ed58176cff123c659573ea461aaea
|
File details
Details for the file Sanic_Auth-0.3.0-py2.py3-none-any.whl.
File metadata
- Download URL: Sanic_Auth-0.3.0-py2.py3-none-any.whl
- Upload date:
- Size: 5.3 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/3.2.0 pkginfo/1.6.1 requests/2.25.1 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.8.7rc1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6f7783b86aee36c95faea44f47e43455a61bb1609248e8ed75df62266aa70c18
|
|
| MD5 |
e291c351e60686c8caf07bfa736f089d
|
|
| BLAKE2b-256 |
5e74d15c158c18ac0a24f2c6a0ef7387b27b39de374fe2235b51e4f5ba2c0457
|