Users may be added to a Moodle site in a number of ways. When user accounts are created on a site, the process is called Authentication and when users join a course, the process is called Enrolment. Normally only the administrator is allowed to add users to a site. Course teachers are only able to add students to their course and do not have permission to add users to the site. (If you're a teacher looking for instructions on how to add students to your course, read Add students.)
Users sign up to the site themselves
If you wish people to create their own accounts on your site, you must enable Email-based self-registration. This features is disabled by default because of the possibility of spammers accessing your site.
The admin creates accounts manually
This process is called Manual authentication and is enabled by default on a site. You can lock certain fields, set password expiry dates and other configure other settings from Site administration > Plugins > Authentication > Manual accounts.
As an administrator, you can add users one at a time from Site administration > Users > Accounts > Add a new user. See the documentation Add a new user for more details.
You can also upload users in batches with a CSV file from Site Administration > Users > Accounts > Upload users. See the documentation Upload users for more details.
The CSV file will also upload users directly into courses and groups within those courses. In the example below, new students are added to the site and enrolled in specified groups in two courses, English and Mathematics. (The courses need to exist already, but if the groups do not already exist, Moodle will create them on upload.)
Users may also be added as members of cohorts (site or category wide batches of users.) See Cohorts for more details.
Adding users from other systems
It is possible for users to connect to Moodle via single sign on from other systems. The settings for these may be found in Site administration > Plugins >Authentication > Manage authentication and include:
- CAS server (SSO) - account details are located on an external CAS server
- External database - account details are located on an external database
- FirstClass server - account details are located on an external FirstClass server
- IMAP server - account details are located on an external IMAP server
- LDAP server - account details are located on an external LDAP server
- Moodle Network authentication - how different Moodle sites can connect and authenticate users
- NNTP server - account details are located on an external NNTP server
- PAM (Pluggable Authentication Modules) - account details come from the operating system Moodle is running on, via PAM (can only be used Linux/Unix).
- POP3 server - account details are located on an external POP3 server
- Shibboleth - account details are located on an external Shibboleth server
- Web services authentication