home / grids / Permissions edit

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.

 

Standard View

Features currently being evaluated

FeatureDescription
Object-level Support for permissions assigned per object.
Django 1.2 backend See: http://docs.djangoproject.com/en/dev/releases/1.2/#object-level-permissions
.
Decorator Object-level decorator for views.
Logical checks Support for permission checked dynamically, e.g. can view entry no older than
one month.
Database Is a database required? If not, how are permissions stored?
Declaration Do you declare permissions for models? How?
Assignment How do you assign permissions for objects?
Templatetag Permissions checks in templates via tags.
Inheritance Permissions inheritance from related objects.
Roles Support for roles in permissions.
Field level Supports permissions at the field level of models
Cascade update Support for cascade update of related objects, e.g. if added view or change perm
for the product, then add view perm for the product category.
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
django.contrib.auth permissions).
PackageDescriptionCategoryDownloadsLast UpdatedVersionRepoCommitsStarsForksParticipantsLicenseObject-levelDjango 1.2 backendDecoratorLogical checksDatabaseDeclarationAssignmentTemplatetagInheritanceRolesField levelCascade updateAny-to-anyModel-level
django-objectpermissionsAn app to add object-level/row-level permissions to users and groups. Each model can have different permissions.App0Oct. 8, 2010, 7:23 a.m.0.3.3Github827justquick
jazzido
bhuztez
Apache , registrationpatched User and Group
django-role-permissionsA django app for role based permissions.App0July 1, 2016, 1:13 p.m.1.2Github10730filipeximenes
reduxionist
victorgutemberg
fjsj
aarcro
drxos
myonov
huogerac
sdee
MIT  permissions are defined by role. , utils functions , define it in a object level checker.
rulesAwesome Django authorization, without the databaseApp0Dec. 7, 2015, 4:43 a.m.1.1.1Github31720dfunckt
ticosax
mlsen
thedrow
hzy
revolunet
slafs
smcoll
MIT  registry of callables  registry of callablesirrelevantirrelevantirrelevantirrelevant
django_sieveServe user-wise data beautifully, minimally and correctly.App0June 4, 2014, 3:59 p.m.1.0.0Github41BSD
carteblancheModule to align code with thoughts of users and designers. Also magically handles navigation and permissions.Other0July 3, 2014, 11:51 a.m.1.0.0Github264neuman
lightstrike
UNKNOWN
django-rolesDjango Roles with Role-Group-Permission-UserApp0Jan. 28, 2015, 4:04 p.m.0.0.4Github30cenkbircanogluMIT
dry-rest-permissionsRules based permissions for the Django Rest FrameworkApp0Feb. 5, 2016, 11:25 a.m.0.1.6Github10612dbkaplan
AlexandreCollet
GerardPaligot
abeniwal
marctc
vovanbo
artragis
BSD
django-aclApp0Oct. 8, 2015, 7:49 p.m.0.1.3Github41MIT
django-flexible-permissionsA Django app that combines object-level table permissions with model relations to avoid normalization of data while providing an extremely ...App0Dec. 10, 2015, 9:21 p.m.1.0.7Github30staabMIT LicenseNo, though it's extensible enough to add that easily.Yes, by creating a role-agent-entity entry, combined with checking optional model relations.By creating a Permission record, mapping actions to roles, and defining permission inheritance via relations.
django-tabular-permissionsDisplay Django permissions in a tabular format that is translatable and easy customized.App0March 16, 2016, 7:27 p.m.1.0.8Github131RamezIssacBSD License
django-trustsDjango authorization add-on for multiple organizations and object-level permission settingsApp0April 30, 2016, 3:17 a.m.0.10.3Github104thomasyip
Core2Duo
suhailvs
BSD 2-Clause  ✅ ✅

django-trusts always works as an annexation; all features require *no* patched class of any sort, works with all existing builtin auth features: authorization, permission, group, contenttypes; option to use junction table mechanism: no moditication to any existing model.
 

Implemented: @permission_required('app.read_project', fieldlookups_kwargs={'pk': 'project_id'})
 

via lambda registered with model (i.e., Content.register_permission_condition(Receipt, 'own', lambda u, p, o: u == o.user))

@permission_required('app.change_receipt:own', fieldlookups_kwargs={'pk': 'pk'})

 

implementation optimized to reduce db hits per http request
 

via django's permission model: app.change_xyz, app.add_xyz, app.delete_xyz or any custom permissions
 

via Models or Django Admin UI
(upcoming: REST api via tastypie)
 

supports django's builtins
 

Can be achieve with two methods:
a) by register the model with field lookup path from another permissible model (i.e., Content.register_content(ReceiptImage, '%s__image' % Content.get_content_fieldlookup('app.Receipt')), or
b) by sharing the same `trust` between depended / dependent objects
 

Role is specified in model's meta and management commands updates db entires and makes it available for permission check
? 

supports updating of multiple object permissions via `trust` and multiple users via django's `auth.models.Group`
 

Same mechanism as Inheritance
 

design to be used alongside with Django's builtin auth ModelBackend
django-global-permissionsGlobal permissions for DjangoApp0Dec. 1, 2015, 9:03 a.m.0.2.2Github133eduardo-matosBSD
django-auth-utilsDjango authentication and authorization utilitiesApp0March 4, 2016, 9 a.m.0.1rc1Github40pjdelportPublic Domain
django-admin-view-permissionReusable application which provides a view permission for the existing models.App0July 13, 2016, 4:58 a.m.0.3Github20lefterisnikBSD License
Django Object PermissionsThis is an implementation of Object Permissions, a.k.a. row level permissions. Object Permissions allow you to assign a permission to ...App0June 6, 2013, 6:33 p.m.1.4.6Github52kreneskyp
bramwelt
MostAwesomeDude
JonahBrooks
Kennric
bsu
chancez
edunham
MIT License , registration dynamically creates permission modelspatched User and Group or util functions , limited functionality
django-hierarchical-authExtends django auth allowing hierarchical permissionsApp0Jan. 5, 2011, 3:03 p.m.1.4.6Github197rascaMIT License
django-rulezA lean and mean object-level rules system for the Django frameworkApp0April 13, 2015, 4:11 p.m.1.0.2Github6316chrisglass
maraujop
jjmaestro
stefanfoulis
nigma
juandecarrion
mitchellrj
DanLipsitt
amites
DarrenRiedlinger
more...
BSD  as a method in the same modelIn the same model as a method which takes the User as argument and returns True or False  not needed as it is integrated with django.contrib.auth permissions  integrated with django.contrib.auth permissions
django-rulesFlexible and scalable Django authorization backend for unified per object permission managementApp0July 16, 2011, 11:32 a.m.Github14710maraujop
jjmaestro
chrisglass
UNKNOWN
django-rubberstampPermissions manager and backend for Django 1.2, supporting object permissions and application-specific permissions.App0Oct. 28, 2010, 6:27 p.m.Github71paltmanUNKNOWN
django-finegrained-permissionsPermissions per field instead of per model for djangoOther0Oct. 6, 2013, 2:36 p.m.0.0.1Github102specialunderwear
PetrDlouhy
GPL
django-generic-permissionsA simple Authentication Backend to manage specific permissions.App0Jan. 9, 2013, 10:47 p.m.0.1.0Github41garrypolleyUNKNOWN  django.contrib.auth.decorators.permission_required 
permissions are view and function level permissions
use the provided add_permission backend

from django_generic_permissions.backends import add_permission

add_permission('foo', logged_in_user)
  this works independent of Django models intentionally
django-bopBasic Object-level Permissions for django 1.2+App0Oct. 20, 2011, 9:16 a.m.0.3Github20pterkBSD
django-permissionsxPermissionsX - Authorization for DjangoApp0June 11, 2016, 6:03 p.m.1.3.4Github375thinkingpotato
adi-
BSD  This package operates on view level.  Permissions are declared for views.Permissions are not assigned to models.Objects are assigned to request and they can be compared to other values by attributes or methods.Depends on implementation.
django-permissionsFramework0June 21, 2015, 12:25 p.m.1.2.2Github118diefenbach
bport
BSDutils functions
django-rbacRole-based Access Control (RBAC) implementation for management of permissions in Django. Allows a fine-grained (row level) permission assignment. Perfect for ...App0March 31, 2010, 11:04 p.m.0.9Bitbucket684nabucosoundBSD Licensemanager , own
django-aclAccess Control Lists for django aka per-row permissions. Largely inspired on phpBB's ACL. Support for roles.App0Aug. 23, 2009, 4:17 p.m.Bitbucket62tyrionUNKNOWNutils functions , own
django-permission-backend-nonrelAn authentication backend that supports Django's user and group permissions on Django-nonrelApp0April 9, 2011, 4:27 p.m.Bitbucket160fhahnUNKNOWN
django-pobjectAn expressive and concise mini permission module for Django views.Other0March 4, 2011, 11:24 a.m.Bitbucket20phuihockUNKNOWN
django-extauthExtended authorization framework for Django, including field-level permissions and role-based permissionsApp0Dec. 10, 2011, 8:42 p.m.Bitbucket212mhall119UNKNOWN
django-custodianThe application django-custodian wrap and extend django.contrib.auth module providing a exaustive and granular approach to authorizations and permissions management. It ...App0Nov. 10, 2011, 7:31 p.m.Bitbucket30fabiomicheliniUNKNOWN , global permissions in settings and model permission as canonical auth , complete API and GUI , from parent container , assimilated by groups , own and integrated
django-permissionAn enhanced permission system which support object permission in DjangoFramework0July 12, 2016, 10:07 p.m.0.9.2Github18139lambdalisue
giginet
quasiyoke
philippeowagner
oskarjakiela
yoyonamite
Simanas
AmbientLighter
SalahAdDin
artscoop
more...
MIT  Works as class/method/functional decorator.  each model have PermissionHandler for them and has_perm method will be called for paricular model.  it use 'Logic' based permission system which is completely different from general permission system.  registration. Each model can be registered with Handler for themAdd builtin PermissionLogic subclass or your own PermissionLogic subclass to the target model class.  You can use like {% if user has 'auth.change_user' of object %}
  for PermissionLogic class  if you add a PermissionLogic class like http://bit.ly/1z22IGl  Can be  Can be
django-authorityA Django app that provides generic per-object-permissions for Django's auth app and helpers to create custom permission checks.App0July 16, 2016, 5:19 p.m.0.11Github12439jezdez
jlward
bartTC
bocribbz
winhamwr
gthb
safwanrahman
remik
diegobz
jpic
more...
BSD , permission classespermission classes instances + admin (action) + custom views , integration
django-guardianPer object permissions for DjangoApp0July 17, 2016, 5:54 p.m.1.4.4Github1170321lukaszb
brianmay
ad-m
bsvetchine
mitar
emperorcezar
troygrosfield
xordoquy
ggreer
clarkperkins
more...
BSD Licensemanager + patched User and Group + shortcut function
+ Admin Integration (with ModelAdmin extension)
PackageDescriptionCategoryDownloadsLast UpdatedVersionRepoCommitsStarsForksParticipantsLicenseObject-levelDjango 1.2 backendDecoratorLogical checksDatabaseDeclarationAssignmentTemplatetagInheritanceRolesField levelCascade updateAny-to-anyModel-level
Search WeightPackageDescriptionLast PyPI release:Repo ForksStars
{{ 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