A grid of all packages implementing permissions for users and groups in your Django project.
Please fell free to verify and update features for listed apps or add another app if you know one.
Package | django-oso | rules | drf-extensions | django-guardian | djangorestframework-api-key | DRF Access Policy | django-role-permissions | django-prbac | django-permissions-policy | Django-Access | Tabular Permissions Widget | django-authority | django-global-permissions | django-permissions-auditor | django-permission2 | Django Permafrost | restframework-serializer-permissions | serious-django-permissions | django-simple-perms |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Description |
Oso is a batteries-included framework for building authorization in your application. |
Awesome Django authorization, without the database |
DRF-extensions is a collection of custom extensions for Django REST Framework |
Per object permissions for Django |
🔐 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 |
Display Django permissions in a HTML table that is translatable and easily customized. |
A Django app that provides generic per-object-permissions for Django's auth app and helpers to create custom permission checks. |
Global permissions for Django |
Tool to audit access control on your django app. |
An simple permission system which support object permission in Django |
Adds User Definable Permissions to 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. |
||
Category | App | App | App | App | App | Other | App | App | App | App | App | App | App | App | App | App | Other | App | App |
# Using This |
3
![]() |
20
![]() |
6
![]() |
82
![]() |
0
![]() |
2
![]() |
6
![]() |
0
![]() |
0
![]() |
2
![]() |
1
![]() |
3
![]() |
0
![]() |
0
![]() |
1
![]() |
0
![]() |
0
![]() |
0
![]() |
1
![]() |
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 | Production/Stable | Alpha | Unknown | Unknown | Unknown |
Last updated | May 4, 2023, 4:09 p.m. | Feb. 23, 2023, 11:06 a.m. | May 29, 2023, 7:31 a.m. | March 25, 2022, 5:42 p.m. | Jan. 19, 2023, 1:52 p.m. | March 2, 2023, 10:42 a.m. | May 9, 2022, 9:19 a.m. | Dec. 2, 2022, 7:12 a.m. | May 16, 2023, 2:33 a.m. | May 22, 2023, 11:55 a.m. | April 11, 2023, 11:37 a.m. | Oct. 27, 2021, 6:59 a.m. | March 22, 2022, 8:30 p.m. | April 12, 2023, 6:52 p.m. | May 29, 2023, 4:29 p.m. | Nov. 17, 2022, 3:50 p.m. | April 6, 2021, 9:24 a.m. | June 19, 2021, 11:36 a.m. | Jan. 28, 2022, 7:25 p.m. |
Version | 0.27.0 | 3.3 | 0.7.1 | 2.4.0 | 2.3.0 | 1.5.0 | 3.1.1 | 1.0.1 | 4.15.0 | n/a | 2.9.1 | 0.14 | 0.2.6 | 1.1.0 | 2.0.0 | 0.2.23 | 0.0.2 | 0.17 | 1.0.3 |
Repo | GitHub | GitHub | GitHub | GitHub | GitHub | GitHub | GitHub | GitHub | GitHub | GitHub | GitHub | GitHub | GitHub | GitHub | GitHub | GitHub | GitHub | GitHub | Bitbucket |
Commits | |||||||||||||||||||
Stars | 3,052 | 1,628 | 1,371 | 3,383 | 574 | 391 | 626 | 123 | 83 | 71 | 59 | 276 | 35 | 14 | 5 | 6 | 11 | 7 | 2 |
Repo Forks | 154 | 132 | 210 | 552 | 88 | 46 | 112 | 37 | 5 | 4 | 11 | 57 | 8 | 4 | 1 | 2 | 1 | 0 | 1 |
Participants |
gj
saolsen dhatch samscott89 leina05 gkaemmer plotnick kkirsche patrickod samraper more... |
dfunckt
zerolab ticosax cclauss dyve hashlash mlsen thedrow orf pjsier more... |
auvipy
chibisov pratyushmittal OskarPersson maryokhin alexander-akhmetov codingjoe joehybird tuky asherf more... |
lukaszb
brianmay ad-m michael-k johnthagen bsvetchine mitar ggreer troygrosfield xordoquy 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
LokkiDog |
RamezIssac
ihabhussein abahnihi vintage |
jezdez
bartTC jlward winhamwr bocribbz gthb safwanrahman remik diegobz RDIL more... |
eduardo-matos
FernandoCelmer perdy |
kluchrj
annamooseity jeffgabhart LerikG |
lambdalisue
renovate[bot] JanMalte giginet quasiyoke LuRsT argsno oskarjakiela philippeowagner Simanas more... |
devo-wm
mgcamisa renderbox rhimmelbauer fahzee1 jared-hardy dependabot[bot] |
manfred-kaiser |
LilithWittmann
seblat |
hespul |
Documentation | 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 |