django-elevate

Extra security for your sensitive pages


Keywords
authentication, django, python, security
License
BSD-3-Clause
Install
pip install django-elevate==1.0.1

Documentation

django-elevate

PyPI Version Build Status Documentation Status Code Coverage

Elevate mode offers an extra layer of security for your most sensitive pages.
This is an implementation of GitHub's Sudo Mode for Django.

What is this for?

Elevate provides an extra layer of security beyond initial user authentication. Views can be decorated with @elevate_required, and then users must re-authenticate to access that resource. This might be useful for deleting objects, canceling subscriptions, and other sensitive operations. After re-authentication, the user has elevated permissions for the duration of ELEVATE_COOKIE_AGE. This duration is independent of the normal session duration, allowing for short elevated permission durations while still retaining long user sessions.

Installation

$ pip install django-elevate

Compatibility

  • Django 2.2, 3.2, and 4.0
  • Python 3.7 - 3.10
  • pypy3

Resources