ROLE_ADMIN - Can do anything
ROLE_PENTESTER - Can do the same as MANAGER and manage vulns, view only his missions, manage only his own account
ROLE_MANAGER - Can assign users to a mission, manage a client account, manage missions
ROLE_CLIENT - Can view only his mission
To populate rights on resources for each role we will provide native roles such as ROLE{resource}{action} (eg. ROLE_MISSIONREAD) and ROLE{resource}_MANAGE to allow all actions on a resource.
We have to manage roles with following hierarchy
ROLE_ADMIN - Can do anything ROLE_PENTESTER - Can do the same as MANAGER and manage vulns, view only his missions, manage only his own account ROLE_MANAGER - Can assign users to a mission, manage a client account, manage missions ROLE_CLIENT - Can view only his mission
To populate rights on resources for each role we will provide native roles such as ROLE{resource}{action} (eg. ROLE_MISSIONREAD) and ROLE{resource}_MANAGE to allow all actions on a resource.