{"categories":[{"label":"Python Modules","url":"https://skillfed.io/packages/category/software-development-libraries-python-modules/7"},{"label":"Security","url":"https://skillfed.io/packages/category/security"}],"enrichment":{"capability":"django-guardian adds per-object permission checks to Django, letting you grant or deny specific users and groups access to individual model instances rather than just model-wide permissions.","skillfed_tags":["authorization","row-level-security","django-extension"],"use_cases":["Grant specific team members access to edit only their own projects or documents in a multi-tenant app.","Implement row-level security where users can only view/modify records they own or have been assigned.","Build admin panels where staff can manage permissions for individual model instances without code changes.","Control access to sensitive objects (e.g., reports, files) on a per-user or per-group basis within a single model.","Enforce organizational hierarchies where managers can only access records for their department or team."],"what_it_does":"django-guardian extends Django's built-in permission system to support per-object (row-level) access control. Instead of granting a user permission to change all instances of a model, you can grant permission to change a specific instance. It works by adding an extra authentication backend and database tables to track object-level grants for users and groups.\n\nThe package integrates directly into Django's permission checking\u2014you use the same `has_perm()` method but pass an object instance as a third argument. It also provides admin integration through `GuardedModelAdmin` so you can manage object permissions in the Django admin panel. The library is widely used in production and supports modern Django versions (3.2\u20135.2) and Python 3.10+.","worth_installing":"Yes. django-guardian is a mature, actively maintained library with no known vulnerabilities, low install friction, and permissive licensing. It solves a real problem\u2014per-object permissions\u2014that Django's built-in system does not address. Use it when you need fine-grained access control beyond model-level permissions."},"id":"django-guardian","links":{"html":"https://skillfed.io/packages/django-guardian","md":"https://skillfed.io/packages/django-guardian.md","pypi":"https://pypi.org/project/django-guardian/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2026-07-22","license_spdx":null,"license_treatment":"permissive","name":"django-guardian","python_support":"supports_current","summary":"Per object permissions for Django"},"popularity":{"monthly_downloads":1082111,"position":4395,"tier":"top_5000"},"security":{"n_vulnerabilities":0},"version":"3.3.3"}
