django-guardianImplementation of per object permissions for Django 1.2 | |
Download |
django-guardian Ranking & Summary
Advertisement
- License:
- BSD License
- Publisher Name:
- Lukasz Balcerzak
- Publisher web site:
- http://code.google.com/u/LukaszBalcerzak/
django-guardian Tags
django-guardian Description
Implementation of per object permissions for Django 1.2 django-guardian is implementation of per object permissions as authorization backend which is supported since Django 1.2. It won't work with older Django releases.InstallationTo install django-guardian simply run:pip install django-guardianConfigurationWe need to hook django-guardian into our project. 1. Put guardian into your INSTALLED_APPS at settings module: INSTALLED_APPS = ( ... 'guardian', ) 2. Add extra authorization backend: AUTHENTICATION_BACKENDS = ( 'django.contrib.auth.backends.ModelBackend', # default 'guardian.backends.ObjectPermissionBackend', )UsageAfter installation and project hooks we can finally use object permissions with Django.Lets start really quickly:>>> jack = User.objects.create_user('jack', 'jack@example.com', 'topsecretagentjack')>>> admins = Group.objects.create(name='admins')>>> jack.has_perm('change_group', admins)False>>> UserObjectPermission.objects.assign('change_group', user=jack, obj=admins)>>> jack.has_perm('change_group', admins)TrueOf course our agent jack here would not be able to change_group globally:>>> jack.has_perm('change_group')FalseDocumentationThere is an online documentation available at http://packages.python.org/django-guardian/. Great peper about this feature is available at http://djangoadvent.com/1.2/object-permissions/. Requirements: · Python · Django
django-guardian Related Software