Customizing roles
You can customize existing or even create completely new roles. This is a powerful feature helping you to fine-tune access to parts of your Moodle. To do that, you should visit the Administration | Users | Permissions | Define roles page.
We have already explained that permissions are calculated based on all roles that a user has within a particular context. Therefore, the most appropriate approach for defining new roles should be based on all roles that a user will have in the higher context and override just a minimal subset of the capabilities.
This is best demonstrated in an example. Let us assume we manage Moodle in a school and apart from students, teachers and other faculty, staff also has course supervisors. We would like to have a set of permissions that permits these supervisors to view all of the courses without actually having to enroll into them while still be unable to modify anything.
We can accomplish this by creating a new role called supervisor. On the Define...