Roles and permissions #25

Closed
opened 2019-08-17 12:27:26 +02:00 by nik · 20 comments
Owner

Allow configuring roles and permissions with a good default set for the average school.

Allow configuring roles and permissions with a good default set for the average school.
Author
Owner

changed milestone to %"1.0a1"

changed milestone to %"1.0a1"
Author
Owner
https://github.com/dfunckt/django-rules
Author
Owner

changed milestone to %"1.0a2"

changed milestone to %"1.0a2"
Author
Owner

changed milestone to %"1.0a3"

changed milestone to %"1.0a3"
Author
Owner

COncerning media files, here is how to do permission checking and file delivery performantly:

https://wellfire.co/learn/nginx-django-x-accel-redirects/

https://github.com/johnsensible/django-sendfile

COncerning media files, here is how to do permission checking and file delivery performantly: https://wellfire.co/learn/nginx-django-x-accel-redirects/ https://github.com/johnsensible/django-sendfile
Author
Owner

I think I found the permission framework I like best for this: https://django-authority.readthedocs.io/en/latest/create_custom_permission/

I think I found the permission framework I like best for this: https://django-authority.readthedocs.io/en/latest/create_custom_permission/
Author
Owner

mentioned in issue #161

mentioned in issue #161
Owner

Maybe we should divide this task in two parts:

  1. Add basic permissions and decorators (admin/login/person-required)
  2. Add an per-object permission system
Maybe we should divide this task in two parts: 1. Add basic permissions and decorators (admin/login/person-required) 2. Add an per-object permission system
Author
Owner

As I understand it, we have decided that we require login for all views now. So we should enforce that by using a middleware. There is an approach called django-stronghold, but it seems not well maintained. We can use it or clone it, but in some way make login_required the default and instead decorate views that are public should there be any.

https://github.com/mgrouchy/django-stronghold

For the rest, I think that per-object permissions cover everything - every operation in AlekSIS should operate on an object, and the object should decide whether it grants access or not.

As I understand it, we have decided that we require login for all views now. So we should enforce that by using a middleware. There is an approach called `django-stronghold`, but it seems not well maintained. We can use it or clone it, but in some way make `login_required` the default and instead decorate views that are public should there be any. https://github.com/mgrouchy/django-stronghold For the rest, I think that per-object permissions cover everything - every operation in AlekSIS should operate on an object, and the object should decide whether it grants access or not.
Author
Owner

changed due date to January 24, 2020

changed due date to January 24, 2020
Author
Owner

changed due date to February 07, 2020

changed due date to February 07, 2020
Author
Owner

changed milestone to %"2.0a2"

changed milestone to %"2.0a2"
Author
Owner

unassigned @nik

unassigned @nik
Author
Owner

changed due date to February 21, 2020

changed due date to February 21, 2020
Author
Owner

removed due date

removed due date
Owner

created merge request !1852 to address this issue

created merge request !1852 to address this issue
Owner

mentioned in merge request !1852

mentioned in merge request !1852
Owner

mentioned in issue AlekSIS-App-Chronos#45

mentioned in issue AlekSIS-App-Chronos#45
Author
Owner

mentioned in commit c2439d0279

mentioned in commit c2439d02799e04d9808a212a3b5ca9df5c318771
Author
Owner

closed via merge request !1852

closed via merge request !1852
Sign in to join this conversation.
No milestone
No project
No assignees
3 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
aleksis/AlekSIS-Core#25
No description provided.