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.App0June 6, 2016, 1:27 p.m.1.1Github10330filipeximenes
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.1Github30919dfunckt
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.0Github263neuman
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.6Github10312dbkaplan
AlexandreCollet
GerardPaligot
abeniwal
marctc
vovanbo
artragis
BSD
django-aclApp0Oct. 8, 2015, 7:49 p.m.0.1.3Github40MIT
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.8Github111RamezIssacBSD License
django-trustsDjango authorization add-on for multiple organizations and object-level permission settingsApp0April 30, 2016, 3:17 a.m.0.10.3Github84thomasyip
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 utilities.App0March 4, 2016, 9 a.m.0.1rc1Github30pjdelportPublic Domain
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.Github1478maraujop
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.0Github42garrypolleyUNKNOWN  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 DjangoFramework0Jan. 14, 2016, 10:49 a.m.0.9.2Github17737lambdalisue
giginet
quasiyoke
philippeowagner
oskarjakiela
yoyonamite
Simanas
SalahAdDin
artscoop
duilio
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.App0June 15, 2016, 5:07 p.m.0.10Github12237jezdez
jlward
bartTC
bocribbz
winhamwr
gthb
remik
diegobz
safwanrahman
jpic
more...
BSD , permission classespermission classes instances + admin (action) + custom views , integration
django-guardianPer object permissions for DjangoApp0June 25, 2016, 11:19 p.m.1.4.4Github1150316lukaszb
brianmay
bsvetchine
mitar
ad-m
emperorcezar
troygrosfield
xordoquy
ggreer
Wtower
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