Django middleware to enforce login before accessing certain URL's
Project description
AuthMiddleware
A Django middleware to enforce user login before accessing certain views.
Setup
You can install django-authmiddleware from pip using
pip install django-authmiddleware
and then add it to your middleware using:
MIDDLEWARE = [
...
'AuthMiddleware.middleware.AuthRequiredMiddleware',
...
]
Make sure you add the trailing comma or you might get a
ImproperlyConfigured
Exception.
Configuration
Configure the middleware's behaviour in your Django project's settings. The middleware expects a AUTH_SETTINGS
setting within Django settings to work properly. You must
set the following keys within AUTH_SETTINGS
:
LOGIN_URL
DEFAULT_REDIRECT_URL
LOCK_URLS
REDIRECT_AFTER_LOGIN
LOGIN_URL
A URL name that is used for login in your django project. Defaults to login
.
AUTH_SETTINGS = {
...
"LOGIN_URL" : "example"
...
}
DEFAULT_REDIRECT_URL
A URL name to which users are redirect if they try to access an invalid URLs. Defaults to None
.
When set to None
, no redirects take place and error is generated for invalid URLs.
AUTH_SETTINGS = {
...
"DEFAULT_REDIRECT_URL" : "example"
...
}
LOCK_URLS
A set of URL names to which access is restricted. Access to these URLs is given only on successful login. Default to empty set {}
.
AUTH_SETTINGS = {
...
"LOCK_URLS" : {
"example-1",
"example-2",
"example-3",
...
}
...
}
REDIRECT_AFTER_LOGIN
If set to True
, user is redirected to original page after successful login. Adds ?next
parameter to URL request. Defaults to True
.
AUTH_SETTINGS = {
...
"REDIRECT_AFTER_LOGIN" : False,
...
}
Contributing
Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
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
File details
Details for the file django_authmiddleware-0.0.4.tar.gz
.
File metadata
- Download URL: django_authmiddleware-0.0.4.tar.gz
- Upload date:
- Size: 3.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.6.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.9.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 031e0358f5e3182a177288f191b7190f667a5d4ae224feb72730052fc2fc38a1 |
|
MD5 | c9db69b834b8d295015f682b0d059a7e |
|
BLAKE2b-256 | b0b3a03961d1b53bb89a53a728d19260aa0204d7ca6037489702a66f532d7a11 |
File details
Details for the file django_authmiddleware-0.0.4-py3-none-any.whl
.
File metadata
- Download URL: django_authmiddleware-0.0.4-py3-none-any.whl
- Upload date:
- Size: 4.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.6.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.9.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e1cc668279da33fc33ad97a5c68ceb166647612fa30f288919b4f75473453644 |
|
MD5 | 20a381a857625740a139849e05b8a52f |
|
BLAKE2b-256 | ac31b5be324e8d5eb4ce5bb16c26e9cbf85cff01c068cf02d780f5f705356635 |