Note: You are currently viewing documentation for Moodle 2.6. Up-to-date documentation for the latest stable version of Moodle may be available here: Creating custom roles.

Creating custom roles: Difference between revisions

From MoodleDocs
No edit summary
(copied from 2.7 docs)
 
(20 intermediate revisions by 6 users not shown)
Line 3: Line 3:


To create a custom role:
To create a custom role:
*Go to ''Settings > Site administration > Users > Permissions > Define roles''.  
#Go to ''Administration > Site administration > Users > Permissions > Define roles''.  
*Click the "Add a new role" button.
#Click the "Add a new role" button.
*On the add a new role page, give the role a name e.g. 'Parent'. If you need to name the role for multiple languages you can use [[Multi language content|multi-lang syntax]] if you wish.
#Select template for the new role or upload a preset
#Give the role a Short name e.g. 'Parent'.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).
#You must provide a full name for all custom roles. If you need to name the role for multiple languages you can use [[Multi language content|multi-lang syntax]] if you wish.
#Give the role a description (optional).
#Select an appropriate role archetype (see below for further information).
#Select the contexts where the role may be assigned e.g. 'User' for Parent role.
#Set permissions as required.
#Scroll to the top or bottom of the page and click the "Create this role" button.


[[Image:CustomRole01.png]]
 
 
*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).
|-
*Select the contexts where the role may be assigned e.g. 'User' for Parent role.
| [[Image:addinganewrole26.png|thumb|Adding a new role and setting context types]]
[[Image:customrole02.png]]
| [[Image:permissions125.png|thumb|Choose "Allow" where required]]
*Set permissions as required.
| [[Image:permissions225.png|thumb|Extra options with "Show advanced" enabled]]
*Scroll to the top or bottom of the page and click the "Create this role" button.
|-
|}
 
==Role archetypes==
 
A role archetype
 
* Is a hard-coded template for a role
* Is used during upgrades when adding defaults for new capabilities - no archetype = no new capabilities during upgrade
* Is used during when resetting a role to determine the defaults - no archetype = reset removes all capabilities
 
There is no need to set a role archetype for custom roles used for overrides or if the site admin wants to specify new capabilities manually after upgrading.


==Creating a duplicate role==
==Creating a duplicate role==


To create a duplicate role:
To create a duplicate role:
*Go to ''Settings > Site administration > Users > Permissions > Define roles''.  
#Go to ''Administration > Site administration > Users > Permissions > Define roles''.  
*In the "edit" column on the right, click the  x2 icon.
#Click the "Add a new role" button.
*Give a name and set permissions for your new role; scroll down and click "create this role".
#Select existing role as a template
*The list of roles will now show the "... copy 1" at the bottom, for example "Guest copy 1".
#Give a name and set permissions for your new role; scroll down and click "Create this role".


==New role considerations==
==New role considerations==


A newly-created role does not have the ability to assign or override any other roles. This is true even when the new role is a copy of a role that had such abilities.  If such ability is needed, the administrator must grant it explicitly via the 'Allow role assignments' and 'Allow role overrides' tabs.
A new role is not automatically listed in course descriptions even if was created by copying a role that is listed, such as Teacher. If you want the new role to appear in the course listing, you must set it explicitly via ''Administration > Site administration > Appearance > Courses>Course Contacts"
 
A new role is not automatically listed in course descriptions even if was created by copying a role that is listed, such as Teacher. If you want the new role to appear in the course listing, you must set it explicitly via ''Settings > Site administration > Appearance > Course managers''.


==Testing a new role==
==Testing a new role==
''Settings > Switch role to''
''Administration > Switch role to''
Use the "Switch role to" link to see what another role will see in that context.   
Use the "Switch role to" link to see what another role will see in that context.   


Line 47: Line 63:
*[[Quiz user with unlimited time role|Quiz user with unlimited time]] - for allowing a user unlimited time to attempt a quiz which has a time limit set
*[[Quiz user with unlimited time role|Quiz user with unlimited time]] - for allowing a user unlimited time to attempt a quiz which has a time limit set
*[[Question creator role|Question creator]] - for enabling students to create questions for use in quizzes
*[[Question creator role|Question creator]] - for enabling students to create questions for use in quizzes
*[[Question sharer]]- for allowing teachers to share questions between courses
*[[Course requester role]] - for restricting users who can make course requests
*[[Course requester role]] - for restricting users who can make course requests
*[[Cohort enroller]] - for allowing teachers to enrol category cohorts into their course
*[[Feedback template creator]] - for allowing teachers to save as "Public" a Feedback template.
*[[Grading forms publisher]] for allowing teachers to share Advanced grading forms with others
*[[Grading forms manager]] for allowing teachers to share Advanced grading forms with others and to delete templates others have created.


==See also==
==See also==
Line 54: Line 75:
* [http://moodle.org/mod/forum/discuss.php?d=66782 What happens if a user has multiple roles in a course?]
* [http://moodle.org/mod/forum/discuss.php?d=66782 What happens if a user has multiple roles in a course?]
* [http://moodle.org/mod/forum/discuss.php?d=90140 logged in: what role am I?]
* [http://moodle.org/mod/forum/discuss.php?d=90140 logged in: what role am I?]
* For more information, Ask questions and get answers on the [http://moodle.org/mod/forum/view.php?id=6826 "Roles and Permissions"] forum.


[[Category:Site administration]]
[[Category:Site administration]]


[[de:Neue Rollen anlegen]]
[[de:Neue Rollen anlegen]]
[[es:Crear roles personalizados]]
[[fr:Création_de_rôles_personnalisés]]

Latest revision as of 11:32, 23 September 2014


Creating a new role

To create a custom role:

  1. Go to Administration > Site administration > Users > Permissions > Define roles.
  2. Click the "Add a new role" button.
  3. Select template for the new role or upload a preset
  4. Give the role a Short name e.g. 'Parent'.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).
  5. You must provide a full name for all custom roles. If you need to name the role for multiple languages you can use multi-lang syntax if you wish.
  6. Give the role a description (optional).
  7. Select an appropriate role archetype (see below for further information).
  8. Select the contexts where the role may be assigned e.g. 'User' for Parent role.
  9. Set permissions as required.
  10. Scroll to the top or bottom of the page and click the "Create this role" button.


Adding a new role and setting context types
Choose "Allow" where required
Extra options with "Show advanced" enabled

Role archetypes

A role archetype

  • Is a hard-coded template for a role
  • Is used during upgrades when adding defaults for new capabilities - no archetype = no new capabilities during upgrade
  • Is used during when resetting a role to determine the defaults - no archetype = reset removes all capabilities

There is no need to set a role archetype for custom roles used for overrides or if the site admin wants to specify new capabilities manually after upgrading.

Creating a duplicate role

To create a duplicate role:

  1. Go to Administration > Site administration > Users > Permissions > Define roles.
  2. Click the "Add a new role" button.
  3. Select existing role as a template
  4. Give a name and set permissions for your new role; scroll down and click "Create this role".

New role considerations

A new role is not automatically listed in course descriptions even if was created by copying a role that is listed, such as Teacher. If you want the new role to appear in the course listing, you must set it explicitly via Administration > Site administration > Appearance > Courses>Course Contacts"

Testing a new role

Administration > Switch role to Use the "Switch role to" link to see what another role will see in that context.

Since switching roles confines you to those roles you can assign in a course context, this method is only useful for testing course-scoped capabilities (i.e. it will not be useful for testing permissions that apply outside the course context, like moodle/user:edit).

Tip: You can always create test user and assign the new role to them. Then logout as admin and login as the test user. This is really the best way to test a new role.

Example custom roles

  • Parent - for providing parents/mentors/tutors with permission to view certain information about their children/mentees/tutees
  • Demo teacher - for providing a demonstration teacher account with a password which can't be changed
  • Forum moderator - for providing a user with permission in a particular forum to edit or delete forum posts, split discussions and move discussions to other forums
  • Calendar editor - for enabling a user to add site or course events to the calendar
  • Blogger - for limiting blogging to specific users only
  • Quiz user with unlimited time - for allowing a user unlimited time to attempt a quiz which has a time limit set
  • Question creator - for enabling students to create questions for use in quizzes
  • Question sharer- for allowing teachers to share questions between courses
  • Course requester role - for restricting users who can make course requests
  • Cohort enroller - for allowing teachers to enrol category cohorts into their course
  • Feedback template creator - for allowing teachers to save as "Public" a Feedback template.
  • Grading forms publisher for allowing teachers to share Advanced grading forms with others
  • Grading forms manager for allowing teachers to share Advanced grading forms with others and to delete templates others have created.

See also

Using Moodle forum discussions: