Django Lightweight Authentication without models and databases, only depend on the Django's SessionMiddleware.
Project description
django-light-auth
Django Lightweight Authentication without models and databases, only depend on the Django's SessionMiddleware.
Install
pip3 install -U django-light-auth
Basic Usage
settings.py
INSTALLED_APPS = [
# ...
# 'django.contrib.auth',
'django_light_auth',
# ...
]
MIDDLEWARE = [
# ...
'django.contrib.sessions.middleware.SessionMiddleware',
# 'django.contrib.auth.middleware.AuthenticationMiddleware',
'django_light_auth.LightAuthMiddleware'
# ...
]
# Session
SESSION_ENGINE = 'django.contrib.sessions.backends.signed_cookies'
# django-light-auth
LIGHT_AUTH_VALIDATE_FUNC = 'your_app.auth.validate_func'
urls.py
from django.urls import path
from django_light_auth import LoginView, LogoutView
urlpatterns = [
# ...
path('login', LoginView.as_view(), name='login'),
path('logout', LogoutView.as_view(), name='logout'),
]
your_app/auth/validate_func.py
#
# example at django_light_auth.light_auth_validate_func
#
from typing import Dict, Any
from your_app.config import config
def light_auth_validate_func(data: Dict[str, Any]) -> bool:
if data.get('username', None) == config.Auth.username and data.get(
'password', None
) == config.Auth.password:
return True
return False
Custom Login View
your_login_view.py
from django_light_auth import LoginView as LoginViewAbs
class LoginView(LoginViewAbs):
template_name = 'your_app/login.html'
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Close
Hashes for django_light_auth-0.2.1-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e5e97e190dccb5301248f29408a451217ed02cac57eece33c4ef10bdd2ff90d6 |
|
MD5 | 18582cc32e42dfef37c8d56ef99ce11f |
|
BLAKE2b-256 | 1a498a6fea00b9ade0cca10ff53d8ebb685ef2c90ca136df896178fd3a654fcd |