A grid of all packages implementing permissions for users and groups in your Django project.<br><br>Please fell free to verify and update features for listed apps or add another app if you know one.
Package | django-oso | rules | django-guardian | drf-extensions | djangorestframework-api-key | DRF Access Policy | django-role-permissions | django-prbac | django-permissions-policy | Django-Access | django-authority | Tabular Permissions Widget | django-global-permissions | django-permissions-auditor | Django Permafrost | django-permission2 | restframework-serializer-permissions | serious-django-permissions | django-simple-perms | Django Debug Permissions | drf-psq |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Description |
Oso is a batteries-included framework for building authorization in your application. |
Awesome Django authorization, without the database |
Per object permissions for Django |
DRF-extensions is a collection of custom extensions for Django REST Framework |
🔐 API key permissions for Django REST Framework |
Declarative access policies/permissions modeled after AWS' IAM policies. |
A django app for role based permissions. |
Set the draft security HTTP header Permissions-Policy (previously Feature-Policy) on your Django app. |
Django-Access - the application introducing dynamic evaluation-based instance-level (row-level) access rights control for Django |
A Django app that provides generic per-object-permissions for Django's auth app and helpers to create custom permission checks. |
Display Django permissions in a HTML table that is translatable and easily customized. |
Global permissions for Django |
Tool to audit access control on your django app. |
Adds User Definable Permissions to Django |
An simple permission system which support object permission in Django |
Drop in replacement for Django Restframework Serializers to add permission based field serialization. |
A Django extension to define and use Groups and Permissions from a central place, per app. |
Get a list of all user permissions available in the system |
The simplest and most general way to manage action-based permissions, serializers, and querysets dependent on permission-based rules for the Djang... |
||
Category | App | App | App | App | App | Other | App | App | App | App | App | App | App | App | App | App | Other | App | App | App | App |
# Using This |
3
![]() |
20
![]() |
81
![]() |
6
![]() |
0
![]() |
2
![]() |
6
![]() |
0
![]() |
0
![]() |
2
![]() |
3
![]() |
1
![]() |
0
![]() |
0
![]() |
0
![]() |
1
![]() |
0
![]() |
0
![]() |
1
![]() |
0
![]() |
0
![]() |
Python 3? | |||||||||||||||||||||
Development Status | Beta | Production/Stable | Production/Stable | Production/Stable | Beta | Unknown | Production/Stable | Alpha | Production/Stable | Beta | Production/Stable | Production/Stable | Beta | Production/Stable | Alpha | Production/Stable | Unknown | Unknown | Unknown | Beta | Unknown |
Last updated | Jan. 24, 2023, 3:01 p.m. | Jan. 11, 2023, 5:26 a.m. | March 25, 2022, 5:42 p.m. | Oct. 7, 2022, 3 a.m. | Jan. 19, 2023, 1:52 p.m. | Oct. 8, 2022, 8:11 p.m. | May 9, 2022, 9:19 a.m. | Dec. 2, 2022, 7:12 a.m. | Jan. 24, 2023, 2:35 a.m. | Jan. 21, 2023, 9:48 a.m. | Oct. 27, 2021, 6:59 a.m. | June 7, 2022, 2:43 a.m. | March 22, 2022, 8:30 p.m. | Jan. 10, 2022, 1:08 p.m. | Nov. 17, 2022, 3:50 p.m. | Jan. 25, 2023, 7:35 p.m. | April 6, 2021, 9:24 a.m. | June 19, 2021, 11:36 a.m. | Jan. 28, 2022, 7:25 p.m. | May 14, 2020, 3:56 a.m. | Feb. 26, 2021, 12:51 p.m. |
Version | 0.26.2 | 3.3 | 2.4.0 | 0.7.1 | 2.2.0 | 1.1.2 | 3.1.1 | 1.0.1 | 4.14.0 | n/a | 0.14 | 2.9.1 | 0.2.6 | 1.0.5 | 0.2.19 | 2.0.0 | 0.0.2 | 0.17 | 1.0.3 | 1.0.0 | 1.1.0 |
Repo | GitHub | GitHub | GitHub | GitHub | GitHub | GitHub | GitHub | GitHub | GitHub | GitHub | GitHub | GitHub | GitHub | GitHub | GitHub | GitHub | GitHub | GitHub | Bitbucket | GitHub | GitHub |
Commits | |||||||||||||||||||||
Stars | 2,867 | 1,577 | 3,326 | 1,341 | 539 | 368 | 603 | 120 | 79 | 60 | 271 | 58 | 34 | 13 | 6 | 5 | 10 | 7 | 2 | 28 | 34 |
Repo Forks | 143 | 129 | 549 | 206 | 83 | 43 | 111 | 38 | 5 | 4 | 57 | 11 | 8 | 3 | 2 | 1 | 1 | 0 | 1 | 1 | 4 |
Participants |
gj
saolsen dhatch samscott89 leina05 gkaemmer plotnick samraper patrickod kkirsche more... |
dfunckt
zerolab ticosax dyve mlsen thedrow orf pjsier danlamanna eviltwin more... |
lukaszb
brianmay ad-m michael-k johnthagen bsvetchine mitar ggreer troygrosfield xordoquy more... |
auvipy
chibisov pratyushmittal OskarPersson maryokhin alexander-akhmetov codingjoe joehybird tuky asherf more... |
florimondmanca
spaceofmiah beegibson brittandeyoung chrismaddalena Enprogames guilleijo jaswanthm jeancochrane jeffgodwyll more... |
rsinger86
dependabot[bot] BarnabasSzabolcs oguzhancelikarslan gianpieropa adamsteele-city tanonl HonakerM alessandro-mariotti-zupit bradydean more... |
filipeximenes
fjsj powderflask kavdev valberg iurisilvio reduxionist amandasavluchinske andersonresende victorgutemberg more... |
millerdev
kennknowles czue dannyroberts biyeun GertBurger NoahCarnahan ArtemBernatskyy nickpell snopoke more... |
adamchainz
pre-commit-ci[bot] rik craiga dependabot[bot] |
nnseva |
jezdez
bartTC jlward winhamwr bocribbz gthb safwanrahman remik diegobz RDIL more... |
RamezIssac
ihabhussein abahnihi vintage |
eduardo-matos
FernandoCelmer perdy |
kluchrj
jeffgabhart LerikG |
devo-wm
mgcamisa renderbox rhimmelbauer fahzee1 jared-hardy dependabot[bot] |
lambdalisue
renovate[bot] JanMalte giginet quasiyoke LuRsT argsno oskarjakiela philippeowagner Simanas more... |
manfred-kaiser |
LilithWittmann
seblat |
hespul | timonweb |
AminHP
salarnasiri zshongyi |
Documentation | n/a | n/a | n/a | n/a | n/a | n/a | n/a | n/a | n/a | n/a | |||||||||||
Object-level | |||||||||||||||||||||
Assignment | irrelevant | manager + patched User and Group + shortcut function + Admin Integration (with ModelAdmin extension) |
, utils functions | permission classes instances + admin (action) + custom views | logical only (code executed on object to determine permission) | logical only (code executed on object to determine permission) | |||||||||||||||
Declaration | Using the policy language |
registry of callables | permissions are defined by role. | , permission classes | declaration in a perms.py file in app |
, declaration in a perms.py file in app | |||||||||||||||
Inheritance | By writing simple rules |
irrelevant | logical only (code executed on object to determine permission) |
||||||||||||||||||
Logical checks | Using the Polar policy language |
||||||||||||||||||||
Decorator | |||||||||||||||||||||
Database | Logic is written as .polar policy files |
registry of callables | only logical check |
only logical check |
|||||||||||||||||
Templatetag | |||||||||||||||||||||
Roles | Check documentation for examples |
irrelevant | Logic for object permission can check whatever you want |
||||||||||||||||||
Cascade update | Permissions are dynamic |
irrelevant | |||||||||||||||||||
Field level | , define it in a object level checker. | ||||||||||||||||||||
Any-to-any | |||||||||||||||||||||
Model-level | , integration | ||||||||||||||||||||
Django 1.2 backend |
Feature | Description |
---|---|
Object-level | Support for permissions assigned per object. |
Assignment | How do you assign permissions for objects? |
Declaration | Do you declare permissions for models? How? |
Inheritance | Permissions inheritance from related objects. |
Logical checks | Support for permission checked dynamically, e.g. can view entry no older than<br>one month. |
Decorator | Object-level decorator for views. |
Database | Is a database required? If not, how are permissions stored? |
Templatetag | Permissions checks in templates via tags. |
Roles | Support for roles in permissions. |
Cascade update | Support for cascade update of related objects, e.g. if added view or change perm<br>for the product, then add view perm for the product category. |
Field level | Supports permissions at the field level of models |
Any-to-any | Permissions for any object to any other object. |
Model-level | Support for model-level perms (either on its own or by seamless integration with<br>django.contrib.auth permissions). |
Django 1.2 backend | See: http://docs.djangoproject.com/en/dev/releases/1.2/#object-level-permissions<br>. |
Search Weight | Package | Description | Last PyPI release: | Repo Forks | Stars | |||
---|---|---|---|---|---|---|---|---|
{{ item.weight / max_weight * 100 | number:0 }}% | {{ item.title }} | Grid: {{ item.description }} | {{ item.last_released | date: 'mediumDate' }} | N/A | {{ item.repo_forks }} | N/A | {{ item.repo_watchers }} | N/A |