Twproject has built-in default roles, but you can create your own in order to model more closely your business model.
Click on the wrench icon and then on roles:
As you can see there are some role “for projects”,global ones, and structural ones.
Go to edit a local role, say Project Manager:
The “role local” check reflects the fact that PM is a role for projects, you may be PM on some project but not in others.
Go to the “permission” part below:
These are permissions that make sense in project, locally.
There are also permissions related to custom reports:
For project related roles you can also define the default subscriptions:
If you edit a global role, the set of permissions is wider:
Structural role reflects on resource structure. The Myself role define what a resource can do on himself, for example agenda menage that gives a resource the permission to always edit his own events. Manager roles refers to permission allowed to manager for a set of resources (resource tree), you can set here for example that a manager can always see the workload of his resources.