Best practices: Customizing permissions to enhance courses in Moodle™

Moodle™ allows its users to have different types of role assignments in numerous locations inside the system. The usual roles assigned to users are Administrator, Manager, Teacher, Non-editing teacher, and Student. These default roles follow a hierarchal pattern where the higher roles have more privileges to accomplish certain tasks than the lower roles. For example, the Teacher role can create, edit, and grade course activities while a Non-editing teacher role can only grade course elements.

Each role has different permissions in the system controlling whether or not the role can complete distinctive tasks. The permissions for each role are defined according to a collection of functions called capabilities. There are hundreds of capabilities in Moodle™ and they vary from giving users the ability to see certain blocks to allowing forum posts to be rated by students. When users are enrolled as students in a course they inherit the permissions of the Student role. However those permissions can be altered at the course and module level.

By default Moodle™ teachers have more privileges than their students do. Therefore they can modify the permissions for the students in their course. This particular functionality gives Moodle™ teachers the possibility to modify the way students interact with their courses. In this post I will provide few examples of how teachers can change permissions to enhance the experience of students and allow them to accomplish different tasks within a Moodle™ course.

Allow students to rate each other

Forum Glossary and Database are the three activities in Moodle™ that allow teachers to rate the entries of students. You can enhance the interactivity of students in those activities by allowing them to rate each other. Let’s say you want to do this for a particular database in your course but not for all databases. To update the permissions you would 1) view the database activity you want to change 2) navigate to Settings > Database administration > Permissions 3) enter “Rate” in the filter field 4) and allow the Student role to have the permission to rate entries.

Take away the privilege of creating or replying to discussion forums.

Certain teachers have discussion forums that happen in a specific period and after a certain date they want students to see but not enter more information into the forum. By default Moodle™ allows students to create new discussion or reply to existing ones at any time. In order to forbid students to add more posts the teacher has to enter the forum activity go to Settings > Forum administration > Permissions and prevent (remove) the student permission in the capabilities “Start new discussions” and “Reply to posts”.

Allow students to take ownership of certain course elements

You can give students the power to have more control over your course by allowing them to take ownership of certain segments. For example you can give students the privilege to add any type of calendar event and create reminders that will display for all students or a particular group. In order to change that permission you need to navigate to Settings > Course administration > Users > Permissions and then grant the Student role the capability “Manage any calendar entries".

Another option is to locally assign students to a role within a particular activity. This allows you to assign specific users to a particular role for that activity only. For example you can create a quiz and ask a few students to collaborate in designing the questions for it by granting them the role of Teacher for that activity. In order to grant them such privilege you will need to 1) create the activity 2) click the” Assign roles” icon to the right of the activity's name in order to locally assign the users as teachers inside the quiz 3) select the “Teacher” role 4) and select the users and click the Add button.

These are just few tips on how to create few customizations to your Moodle™ courses so you can make them a bit more interactive for your audience. It is important to remember that any type of capability change requires caution and you should test the changes before implementing in a live course. If you are interesting in learning more about advanced features in Joule I recommend you to sign up for the online course Advanced Course Building.


~Marcelo Mendes



Discover our solutions