Saturday, July 27, 2013

How I enabled Single Sign On (SSO) to Mahara from Moodle with the LTI plugin

I've managed to enable Single Sign On (SSO) between my Moodle site and my Mahara site. That's pretty cool as now I have TWO major learning sites. A Moodle site for teachers to put their learning material, and a Mahara site for students to showcase their work through their portfolios.

I. Install your Mahara site

II. Download and install the Mahara LTI plugin in Mahara

Directions for configuring Mahara:
1Download the Mahara LTI plugin
2. Extract the LTI plugin into Mahara's auth folder
3. Go to Admin home - Extensions - Plugin Administration - Plugin type: auth
4.  Enable 'blti'
For more detailed configuration, follow the directions here

Installation (from Sourceforge)
  • Uncompress to Mahara auth folder
  • Go to Admin home - Extensions - Plugin Administration - Plugin type: auth
  • Enable "blti"


  • Do click over [config] to configure BasicLTI:

    • Overwritte user data:
      • if true, the data of user will be updated in each login. There are name, surnames and email.
      • if false, the data of user only is updated when user is created.
    • Default Group in Mahara: Select one of them, default_value is "Course: Controlled Membership"
      • Course: Controlled Membership
      • Course: Request Membership
      • Standard: Open Membership
      • Standard: Request Membership
      • Standard: Invite Only
      • Standard: Controlled Membership
    • Group is public: Indicates if group created is public
    • External users can be added to group: Define if external users can be added to group
    • Send notifications to members: Indicates if each notificaction has to be sended to each member, by email. Enabling this option can get to send many emails
    • Default Group Category: When the plugin creates a group defines which category by default, you can use for searching.
    • In consumer you have to indicate the url

Configuration Files

BLTI/configuration/mappingFields.cfg you can assign custom fields to the fields Elgg LMS.
username_no_prefix: username prefix mode, if set to 0 get username with prefix (CONSUMER_username) if set 1 then doesn't have prefix (username). 
mapping_as_admin:mapping as admin blti admin user, if not it will be a simple user in mahara
number_of_fields: number of fields to Mapping
fieldX_source: indicate the name of LMS parameter, the X means the number of parameter (1 to number_of_fields)
fieldX_destination: indicate the name of Mahara parameter, the X means the number of parameter (1 to number_of_fields)

  • BLTI/IMSBasicLTI/configuration/authorizedConsumersKey.cfg you can define the user and password, for example to define the consumer key "external" yo have to define

III. Create an External Tool activity on the Moodle coursepage
After I had setup the Mahara LTI plugin, I created an External Tool on my Moodle coursepage named "My Mahara"....
Here's the External Tool settings...
IV. The End Result
Here's the SSO in action:
Expanding the window, I can see that the Mahara username is the same as my Moodle username.
Now that's what I call integration!
If you haven't yet integrated Moodle with Mahara, I encourage you to give it a try. It will give your Moodle site a whole new perspective and purpose. Plus, your students will thank you for giving them a place (Mahara) to showcase their work to their coursemates and teachers.

If you like this post or site
a small donation would be nice but would last only a day,
otherwise leaving a comment (or a compliment) below will last me a month!

Ratings and Recommendations by outbrain