Skip to main content

A middleware that ensures that a request always has an authenticated user.

If the request doesn’t have an authenticated user, it logs in a default user. If the default user doesn’t exist, it is created.

Compatibility

This middleware has been tested with these versions of Django:

  • 1.7

  • 1.8

  • 1.9

  • 1.10

  • master (at the time of the release)

Setup

Install from PyPI:

pip install django_always_authenticated

Add to MIDDLEWARE (MIDDLEWARE_CLASSES for Django <1.10) in settings file:

MIDDLEWARE = (
    ...
    'always_authenticated.middleware.AlwaysAuthenticatedMiddleware',
)

As a security safeguard, the middleware will raise an ImproperlyConfiguredException when running in production mode (DEBUG=False). To run the middleware in production, set ALWAYS_AUTHENTICATED_DEBUG_ONLY to False.

Configuration

This middleware reads these settings:

ALWAYS_AUTHENTICATED_USERNAME

A string with the name of the default user, defaults to 'user'.

ALWAYS_AUTHENTICATED_USER_DEFAULTS

A dict with additional default values to set when creating the user.

ALWAYS_AUTHENTICATED_DEBUG_ONLY

Set to False to allow running with DEBUG=False.

Example project

There is a very single example project that demonstrates the middleware in the directory example_project.

Running Tests

To run the tests, install the requirements and run py.test:

pip install -r requirements.txt
py.test

You can also use tox to run the tests with all supported versions of Python and Django:

pip install tox
tox

Metadata

Release files for django-always-authenticated 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for django-always-authenticated 0.1.0
File Size Uploaded
django-always-authenticated-0.1.0.tar.gz 2.9 kB Details

Release files / django-always-authenticated-0.1.0.tar.gz

Download URL django-always-authenticated-0.1.0.tar.gz
Size 2.9 kB
Tags Source
SHA-256 checksum
How to use checksums
8f111220d27cc1951f965afc63ffa42e716e1ca7f84ab5aa010bd73c0fde4e76
BLAKE2b-256 checksum
How to use checksums
9c69b083b81ab31692412388fbd3a799156891b6f7d27e95c192caba7ada5a31
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

0.1.0 This release

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page