Installation of the Joomla authentication is mostly automatic.
To install the Joomla authentication:
Copy folders to moodle directory
Copy the two folders auth, lang into your moodle directory. Folders with the names auth and lang should already exist there, copying the new folders will only add files to the existing folders.
Joomla admin authentication page
Visit your user authentication admin page to configure. In Joomla 1.9 it's under Users->Administration->Manage Authentication
Change Joomla settings
Select "Settings" and enter the following:
- Host: The database server which hosts the Joomla database
- Joomla Database: Probably MySQL
- Use Sybase Quotes: Sybase style single quote escaping - needed for Oracle, MS SQL and some other Joomla databases. Do not use for MySQL!
- DB Name: Name of the Joomla database itself
- DB User: Username with read access to the Joomla database
- Password: Password matching the above username
- Table: Name of the table in the Joomla database e.g. "jos_users" if your table prefix is "jos_"(default), if not, substitute your own table prefix. If you don't know and jos_users doesn't work, you'll need to connect to the Joomla database server and find the users table.
- Username field: Name of the field containing usernames e.g. "username"(default)
- Password field: Name of the field containing passwords e.g. "password"
- Password Format: Specify the joomla version (old or new). Use 'Old Joomla' if Joomla version is 1.0.12 or lower. Use 'New Joomla' if Joomla version is 1.0.13 or higher.
- External DB encoding: Encoding used in Joomla database. e.g. "utf-8"(default)
- SQL Setup Command: Leave blank unless you need a special setup command to run. SQLcommand for special Joomla database setup, often used to setup communication encoding - example for MySQL and PostgreSQL: SET NAMES 'utf8'
- Debug ADOdb: Debug ADOdb connection to Joomla database - use when getting empty page during login. Not suitable for production sites.
- Password Change URL: Here you can specify a location at which your users can recover or change their username/password if they've forgotten it. This will be provided to users as a button on the login page and their user page. if you leave this blank the button will not be printed. For default Joomla 1.5 installations, this is: http://www.yoursite.com/index.php?option=com_user&lang=en&view=reset
For Community Builder it is: http://www.yoursite.com/index.php?option=com_comprofiler&Itemid=1&lang=en&task=lostPassword The itemid may vary from site to site. If unsure, go to your website and copy the url for the "Lost Password" link.
- Removed Ext User: Specify what to do with internal user account during mass synchronization when user was removed from external source. Only suspended users are automatically revived if they reappear in ext source.
- Data Mapping: These fields are optional. You can choose to pre-fill some Moodle user fields with information from the Joomla database fields that you specify here. If you leave these blank, then defaults will be used. In either case, the user will be able to edit all of these fields after they log in.
Save and enable module
Select "Save Changes" and then click on the eyeball to enable the module.
Now you are ready to rock :)
Additional Modification to Moodle: Everything should be working correctly according to the steps above, however there additional settings in Moodle which need to be changed in order to direct users to the correct registration and password/profile pages.