Managing roles: Difference between revisions

From MoodleDocs
mNo edit summary
 
(66 intermediate revisions by 15 users not shown)
Line 1: Line 1:
{{Roles}}
{{Roles}}
Location: ''Administration > Users > Permissions > Define roles''
Managing overall role capabilities can be done by an administrator using  ''Administration > Site administration > Users > Permissions > Define roles''.  This is the place to add custom roles or modify existing roles.  The "Manage roles" tab, allows the system administrator to edit any one of over 350 different capabilities associated with any role.  The "Allow role assignments", "Allow role overrides" and "Allow role switches" contain a matrix which give the ability for a specific role to work with other specific roles.


==Manage roles==


The define roles page has three tabs, for managing roles, [[Allow role assignments|allowing role assignments]] and [[Allow role overrides|allowing role overrides]].
The 'Manage roles' tab contains a list of roles on your site. The edit column contains icons for editing, deleting roles and copying roles, and for moving them up or down in the list (affecting the way that roles are listed around Moodle).


The manage roles tab contains a list of roles on your site. The edit column contains icons for editing and deleting roles, and for moving them up or down in the list (affecting the way that roles are listed around Moodle).
[[Image:Allowroletoview.png]]


To edit a role:
#Go to ''Administration > Site administration > Users > Permissions > Define roles''.
#Click the edit icon opposite the role you want to edit. For example "student".
#On the editing role page, change permissions as required for each capability.
#Scroll to the bottom of the page and click the "Save changes" button.


==Predefined roles==
See [[Creating custom roles]] for information about adding a new role and creating a duplicate role.
Moodle comes with 7 predefined roles:
*[[Assign administrators|Administrator]]
*[[Course creator]]
*[[Teacher]]
*[[Teacher#Non-editing teacher| Non-editing teacher]]
*[[Student]]
*[[Guest access|Guest]]
*[[Authenticated user]] (from 1.8 onwards)


==Editing a role==
==Role name localisation==
[[Image:manage roles.png|thumb|Managing roles]]
 
To edit a role:
If a standard role name or description is empty Moodle uses a default string from the current language pack. Custom roles can be customised using multilang syntax.
#Click on Permissions in the Site Administration block, then Define roles.
#Click the edit icon opposite the role you want to edit e.g. student.
#On the edit role page, change permissions as required.
#Scroll to the bottom of the page and click the "Save changes" button.


==Adding a new role==
You may also override the role names separately in each course.


To add a new role:
==Resetting a role==
#Click on Permissions in the Site Administration block, then Define roles.
#Click the "Add a new role" button.
#On the add a new role page, give the role a name. If you need to name the role for multiple languages you can use [[Multi language content|multi-lang syntax]] if you wish, such as <code><nowiki><span lang="en" class="multilang">Teacher</span> <span lang="es_es" class="multilang">Profesor</span></nowiki></code>. If multi-lang syntax is used then ''Filter all strings'' should be set in [[Filter settings]].
#Give the role a meaningful short name. The short name is necessary for other plugins in Moodle that may need to refer to the role (e.g. when uploading users from a file or setting enrolments via an enrolment plugin).
#Give the role a description (optional).
#Set permissions as required.
#Scroll to the bottom of the page and click the "Add a new role" button.


==Creating a duplicate role==
To reset a role back to the default permissions:
{{Moodle 1.8}}In Moodle 1.8 onwards, a new role may be quickly created by making a copy of an existing role.
#Go to ''Administration > Site administration > Users > Permissions > Define roles''.
#Click on the name of the role, for example "student".
#Click the 'Reset' button.


To create a duplicate role:
Note that if you have students who have been given extra permissions at course and/or activity levels (such as forum ratings), then they will no longer be able to do this once the role has been reset to its default. A teacher would need to go back and set up these extra permissions in the course/activity levels again.
#Click on Permissions in the Site Administration block, then Define roles.
#Click on the role to be duplicated, for example "Guest".
#Click the "Duplicate role" button near the top of the "View role details" page.
#Answer Yes to the question "Are you sure you want to duplicate the role ...?"
#The list of roles will now show the "... copy 1" at the bottom, for example "Guest copy 1". 
#Edit the duplicated role to meet your needs.


==Legacy role types==
==Allow role assignments==


* Legacy role types were implemented for backward compatibility.
The "Allow role assignments" tab allows (or does not allow) a specific role to be able to assign specific roles to a user.
* Selecting a legacy role type in 1.8 (or allowing a legacy capability in 1.7) does NOT provide a new role with all capabilities of a pre-Moodle 1.7 role.
*It is recommended that a legacy role type is selected only for roles that are similar to pre-Moodle 1.7 student/teacher/admin/creator roles.
* It is not necessary to select a legacy role type unless using old 3rd party code that was not designed for Moodle 1.7 and doesn't yet support roles.


==New role considerations==


A newly created or copied role does not have the ability to override or assign any other roles. You should consider if you need to allow the role such rights.
===Enabling teachers to assign other teachers===
By default, teachers can only assign other users the roles of non-editing teachers, students and guests. If you want teachers to be able to assign other teachers in their course, you can allow the role assignment:


New roles will not by default be listed in course descriptions (even if copied from a role that already is, such as the [[Teacher]] role). This is set via ''Administration > Appearance > [[Course managers]]''.
#Click on ''Administration > Site administration > Users > Permissions > Define roles''.
#Click the Allow role assignments tab.
#Click the checkbox where the teacher row and column intersect.
#Click the "Save changes" button.


==Testing a new role==
==Allow role overrides==
The "Allow role overrides" tab allows (or does not allow) a specific role to be able to override specific roles for a user.  For example, it might allow a teacher role to override a student's role to a non-editing teacher's role.


To test a new role:
:Note that the settings only apply to roles that have the capabilities [[Capabilities/moodle/role:override|moodle/role:override]] or [[Capabilities/moodle/role:safeoverride|moodle/role:safeoverride]] allowed.
#Create test user and assign new role to them.
#Either logout as admin and then login as test user or use a different browser to login as test user.


Note: Role changes only take effect after the next login from that user. New roles may not be tested using the "Switch role to..." feature.
==Allow role switches==
The "Allow role switches" tab allows (or does not allow) a specific role to be able to temporarily change their role to another specific role.  For example, this might allow a users assigned to a custom role in a course to see "Student" in the Settings > Switch role list. 
:Note: the selected role must also have the moodle/role:switchroles capability to be able to switch.


==Example roles==
==Allow role to view==


*[[Inspector role|Inspector]] - for providing external inspectors with permission to view all courses (without being required to enrol)
'''New in 3.5:''' This setting allows the administrator to decide which roles users can see, search and filter by, according to their existing role.
*[[Parent role|Parent]] - for providing parents/mentors/tutors with permission to view certain information about their children/mentees/tutees
*[[Demo teacher role|Demo teacher]] - for providing a demonstration teacher account with a password which can't be changed
*[[Forum moderator role]] - for providing a user with permission in a particular forum to edit or delete forum posts, split discussions and move discussions to other forums
*[[Keyholder role]] - for setting the person named as holding a course [[Enrolment key|enrolment key]]
*[[Calendar editor role]] - for enabling a user to add site events to the calendar.


==See also==
==Roles capabilities==


*Using Moodle [http://moodle.org/mod/forum/discuss.php?d=66782 What happens if a user has multiple roles in a course?] forum discussion
*[[Capabilities/moodle/role:manage|Create and manage roles]]
*[[Capabilities/moodle/role:assign|Assign roles to users]]
*[[Capabilities/moodle/role:switchroles|Switch to other roles]]


[[Category:Administrator]]
[[Category:Site administration]]
[[Category:Roles]]


[[de:Rollen verwalten]]
[[es:Gestionar_roles]]
[[es:Gestionar_roles]]
[[fr:Définir les rôles]]
[[eu:Rolak_kudeatu]]
[[fr:Gestion des rôles]]
[[it:Gestire i ruoli]]
[[ja:ロールの管理]]
[[ja:ロールの管理]]

Latest revision as of 07:51, 13 May 2020

Managing overall role capabilities can be done by an administrator using Administration > Site administration > Users > Permissions > Define roles. This is the place to add custom roles or modify existing roles. The "Manage roles" tab, allows the system administrator to edit any one of over 350 different capabilities associated with any role. The "Allow role assignments", "Allow role overrides" and "Allow role switches" contain a matrix which give the ability for a specific role to work with other specific roles.

Manage roles

The 'Manage roles' tab contains a list of roles on your site. The edit column contains icons for editing, deleting roles and copying roles, and for moving them up or down in the list (affecting the way that roles are listed around Moodle).

Allowroletoview.png

To edit a role:

  1. Go to Administration > Site administration > Users > Permissions > Define roles.
  2. Click the edit icon opposite the role you want to edit. For example "student".
  3. On the editing role page, change permissions as required for each capability.
  4. Scroll to the bottom of the page and click the "Save changes" button.

See Creating custom roles for information about adding a new role and creating a duplicate role.

Role name localisation

If a standard role name or description is empty Moodle uses a default string from the current language pack. Custom roles can be customised using multilang syntax.

You may also override the role names separately in each course.

Resetting a role

To reset a role back to the default permissions:

  1. Go to Administration > Site administration > Users > Permissions > Define roles.
  2. Click on the name of the role, for example "student".
  3. Click the 'Reset' button.

Note that if you have students who have been given extra permissions at course and/or activity levels (such as forum ratings), then they will no longer be able to do this once the role has been reset to its default. A teacher would need to go back and set up these extra permissions in the course/activity levels again.

Allow role assignments

The "Allow role assignments" tab allows (or does not allow) a specific role to be able to assign specific roles to a user.


Enabling teachers to assign other teachers

By default, teachers can only assign other users the roles of non-editing teachers, students and guests. If you want teachers to be able to assign other teachers in their course, you can allow the role assignment:

  1. Click on Administration > Site administration > Users > Permissions > Define roles.
  2. Click the Allow role assignments tab.
  3. Click the checkbox where the teacher row and column intersect.
  4. Click the "Save changes" button.

Allow role overrides

The "Allow role overrides" tab allows (or does not allow) a specific role to be able to override specific roles for a user. For example, it might allow a teacher role to override a student's role to a non-editing teacher's role.

Note that the settings only apply to roles that have the capabilities moodle/role:override or moodle/role:safeoverride allowed.

Allow role switches

The "Allow role switches" tab allows (or does not allow) a specific role to be able to temporarily change their role to another specific role. For example, this might allow a users assigned to a custom role in a course to see "Student" in the Settings > Switch role list.

Note: the selected role must also have the moodle/role:switchroles capability to be able to switch.

Allow role to view

New in 3.5: This setting allows the administrator to decide which roles users can see, search and filter by, according to their existing role.

Roles capabilities