This package works like the standard Django loaddata / dumpdata commands only it's used for creating auth.Group objects with their provided permissions.
- Python >= 3.6
- Django >= 1.11
pip install django_perms_provisioner
Then the only thing left before you can start using the Django Permissions
Provisioner
is adding it to you installed apps.
INSTALLED_APPS = [
"django_perms_provisioner",
]
Configuration can either be done via providing a YAML
or JSON
file. Your
file needs to have one of the following extensions: .json, .yaml, .yml, and
their approriate contents of course.
Examples:
---
groups:
- name: Group Name
permissions:
sites:
- site.add_site
- site.change_site
wagtailadmin:
- admin.access_admin
{
"groups" [{
"name": "Group Name",
"permissions": {
"sites": ["site.add_site", "site.change_site"],
"wagtailadmin": ["admin.access_admin"]
}
}]
}
It is also possible to only create groups this can be done by just leaving out the permissions.
Example:
---
groups:
- name: Group Name
- name: Next Group Name
To load permissions from a configuration file
./manage.py loadperms permissions.yaml
Or to dump permissions to a configuration file
./manage.py dumpperms > permissions.yaml