{"categories":[{"label":"Python Modules","url":"https://skillfed.io/packages/category/software-development-libraries-python-modules/22"}],"enrichment":{"capability":"Implements parameterized role-based access control (PRBAC) for Django applications, allowing you to define roles and privileges with parameters to control who can do what across your system.","skillfed_tags":["access-control","django-extension","rbac"],"use_cases":["Multi-tenant SaaS applications where different organizations need different access levels to the same features.","Complex reporting systems where analysts need access to specific data subsets parameterized by region, department, or time period.","Enterprise applications with hierarchical role structures where roles inherit privileges conditionally based on parameters.","Systems requiring fine-grained object-level access control tied to role membership and parameter matching.","Applications that need to audit and manage who has access to what without hardcoding permissions in code."],"what_it_does":"Django-prbac brings parameterized role-based access control to Django applications. Unlike Django's built-in permission system, which is tied to content types, PRBAC lets you define roles and privileges as abstract concepts and add parameters to them\u2014so you can grant something like 'Reporting(organization=\"Dimagi\", area=\"Finance\")' to a specific role. This is more expressive than traditional RBAC because the parameters can be finite sets or infinite (strings, integers, etc.), making it exponentially or infinitely more powerful depending on how you use it.\n\nThe package depends on Django, jsonfield, and simplejson to store and manage these parameterized roles and privileges. It is actively maintained, supports modern Python versions (3.9\u20133.13) and recent Django releases (4.2 through 5.2), and has no known security vulnerabilities. The library is marked as alpha-stage but has been in development since 2013, so it is reasonably stable for production use.","worth_installing":"Yes, if you need parameterized role-based access control beyond what Django's built-in auth provides. The package is actively maintained, has low install friction, supports current Python and Django versions, and carries no known vulnerabilities. It is marked alpha but has been stable since 2013. The main caveat is that the license treatment is unclear in the metadata, so verify the actual license (described as MIT in the documentation) before use."},"id":"django-prbac","links":{"html":"https://skillfed.io/packages/django-prbac","md":"https://skillfed.io/packages/django-prbac.md","pypi":"https://pypi.org/project/django-prbac/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2025-09-24","license_spdx":null,"license_treatment":"unclear","name":"django-prbac","python_support":"supports_current","summary":"Parameterized Role-Based Access Control for Django"},"popularity":{"monthly_downloads":77705,"position":14504,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"1.1.2"}
