Improve the manager based on RBAC
custom_user: add new permission on groups, change_permissions_group
#1 Updated by Benjamin Dauvergne about 5 years ago
- Patch proposed set to No
Discussion on authorization in authentic restarted thanks to current tickets #5261 and #4775:
First my idea for an authorization framework datamodel:
Action = (Slug) Permission = (Action, Object) # ex. ('login', SAML provider#01) Role = (Name, Slug, [Permission]) UserRoleMapping = (User, Role) GroupRoleMapping = (Group, Role)
Maybe we should restrain from defining any kind of data model and just try to create an API that allow service providers to know when they can allow login or not.Some grand goal for any authorization framework:
- be as simple as possible for getting a working implementation fast, but allow extensions,
- provide a hierarchical role model with inheritance
- long term: allow to import authorization model from service provider locally, maybe not natively but by allowing multiple authorization backend to be loaded at the same time and answer to authorization requests:
- a backend could for example synchronize a list of distant roles so that all management can be done in authentic without having to manually recreate the role mode on its side (roles from w.c.s.),
- reversely roles defined in authentic could be given some context and be replicated to the service provider when they are local to it.
- login on service provider #04 to user/group #05
- add attribute 'xyz' with value 'abc' to user/group #07 on service provider #02
- manage users in group 'Administrators of service provider #05'
#11 Updated by Benjamin Dauvergne over 4 years ago
- % Done changed from 0 to 100
- Status changed from Nouveau to Résolu (à déployer)
Appliqué par commit authentic2|25ad9166a1a0367c659e858346db7f9b8b7fa3f3.