You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Oct 5, 2024. It is now read-only.
Currently the permissions system is linear. You cannot be allowed to manage the meeting and issues unless you are also allowed to vote (but you can toggle who can currently vote, that's another case).
I suggest implementing a permission system using ACL instead of a linear numeric scale.
This is the same way Django does it, as well as how OAuth2 scopes works.
A user with the CAN_VOTE permission level could instead of having permissions: 5 have permissions: ['CAN_VOTE'].
A user with the IS_MANAGER permissions could instead of having permissions: 10 have permissions: ['IS_MANAGER'], and optionally 'CAN_VOTE'.
The same goes for superusers. They can have CAN_VOTE and IS_SUPERUSER, but they can also not haveIS_MANAGER (or can manage could be a better word in this context), which removes the possibility to manage the meeting.
This makes it possible to finely tune which user can do what, e.g. based on membership rules and attendance, without having to give someone rights they shouldn't have (e.g. that managers ("tellekorps") have to be able to vote).
The text was updated successfully, but these errors were encountered:
Currently the permissions system is linear. You cannot be allowed to manage the meeting and issues unless you are also allowed to vote (but you can toggle who can currently vote, that's another case).
I suggest implementing a permission system using ACL instead of a linear numeric scale.
This is the same way Django does it, as well as how OAuth2 scopes works.
A user with the
CAN_VOTE
permission level could instead of havingpermissions: 5
havepermissions: ['CAN_VOTE']
.A user with the
IS_MANAGER
permissions could instead of havingpermissions: 10
havepermissions: ['IS_MANAGER']
, and optionally'CAN_VOTE'
.The same goes for superusers. They can have
CAN_VOTE
andIS_SUPERUSER
, but they can also not haveIS_MANAGER
(or can manage could be a better word in this context), which removes the possibility to manage the meeting.This makes it possible to finely tune which user can do what, e.g. based on membership rules and attendance, without having to give someone rights they shouldn't have (e.g. that managers ("tellekorps") have to be able to vote).
The text was updated successfully, but these errors were encountered: