Uploaded image for project: 'Moodle'
  1. Moodle
  2. MDL-62599

Add LTI 1.3 support to Moodle

    XMLWordPrintable

    Details

    • Testing Instructions:
      Hide

      The changes made include some fundamental updates to the core LTI code and so a comprehensive check of the LTI functionality is warranted.

      • Setup in a Moodle 3.6 instance (on a publicly accessible server):
        • create a course
        • create 3 users with the following details:
          • Given name: Siân
            Family name: Instructor
            Email: sian@imscert.org
            ID number: sis:sian
            Role: Teacher
          • Given name: John
            Family name: Student
            Email: john@imscert.org
            ID number: sis:sian
            Role: Student
          • Given name: Gill
            Family name: O'post-rophe
            Email: gill@imscert.org
            ID number: sis:gill
            Role: Student
        • Log in as Siân
        • add an LTI 1 external tool with a launch URL of https://lti.tools/saltire/tp a consumer key of "moodle" and a secret of "secret"
        • add an LTI 2 tool using a registration URL of https://lti.tools/saltire/tp - just submit the tool proxy with the default options
        • launch each tool and keep a copy of the message parameters section
        • log in as John
        • launch each tool and keep a copy of the message parameters section
      • Upgrade Moodle instance to 3.7dev
      • Check existing links:
        • Log in as Siân
        • Launch each tool and keep a copy of the message parameters section - other than OAuth parameters, they should be identical to the original copy
        • Log in as John
        • Launch each tool and keep a copy of the message parameters section - other than OAuth parameters, they should be identical to the original copy
      • IMS LTI Certification Suite
        • Open certification suite at https://www.imsglobal.org/lti-certification-suite and follow the "Process for Tool Consumers" option at the bottom (requires IMS login)
        • Enter "Moodle" and "3.7" on the configuration page and click "Save settings"
        • Log in as a System Administrator
        • Create the two courses outlined in the instructions displayed (enter an ID number for each course)
        • Test LTI 1.0/1.1:
          • Create an LTI 1 tool using the details provided by the certification suite - select the "Show in activity chooser and as a preconfigure tool" Tool configuration usage option, "New window" for the Default launch container option and check the Content-Item Message box
          • Login is as Siân
          • Add 3 links as per suite instructions
          • Run through LTI 1 certification tests - most tests can be completed by launching each of the 3 links by each of the 2 users, then use the "Select Content" option when creating a new link, and run all the tests of services from the results page of the suite
          • Run MDL-60416 tests (note that a 401 error should be expected rather than a 403 error as per the instructions.)
        • Test LTI 2:
          • Register LTI 2 tool to certification suite
          • Add a link using the new tool
          • Run through LTI 2 certification tests - most tests can be completed by launching each of the 3 links by each of the 2 users, then use the "Select Content" option when creating a new link, and run all the tests of services from the results page of the suite
          • Run MDL-60416 tests (note that a 401 error should be expected rather than a 403 error as per the instructions.)
      • Test LTI 1.3
        • Generate a private/public key at https://lti-ri.imsglobal.org/ 
        • Open certification suite at https://ltiadvantagevalidator.imsglobal.org/ltiplatform (requires IMS login)
        • Proceed through to the Tool configuration page
        • Log into Moodle as System Administrator
        • Create a manual tool - set LTI version to 1.3, copy the 
          Initiate Login URL, Redirection URIs, launch URL, Deep Linking (Content-Item) URL, paste in the public key generated above, select the "Show in activity chooser and as a preconfigure tool" Tool configuration usage option, "New window" for the Default launch container option and check the Content-Item Message box
        • All Privacy options should beleft as Delegate to teacher
        • Select the bottom option for each of the services
        • Save the tool
        • In the certification suite, do not select any of the Start Testing With options
        • Click next for the Platform Configuration page
        • Click the View configuration details button for the tool in Moodle and copy the details into the certification suite (iss = platform ID, well-known Url = public keyset URL, OAuth Bearer Retrieval Url = access token URL
        • Copy in the generated private key
        • Click next
        • Log into Moodle as Siân
        • Add a link to the new tool in each of the two courses
        • Log into Moodle as John
        • Launch one of the links (should generate a Payload Received message)
        • Click Continue in the certification suite
        • Run each test:
          • click on Test options
          • click Submit Test
          • click Confirm Results
          • if you get an error it is likely that the launch message has timed out - just launch again and re-re-run the test
          • click in Next Test
          • repeat!
        • NB ignore any error with the lti11_legacy_user_id
        • At some point the tool will need to be re-configured to stop sending personal data - this can be done via the settings for the link being used to launch from
        • At some point it will ask you to launch as an Instructor so you will need to log out and back in as Siân (set the Privacy options to send personal data when you do - you will be asked again later to disable them)
      • Run unit tests
      Show
      The changes made include some fundamental updates to the core LTI code and so a comprehensive check of the LTI functionality is warranted. Setup in a Moodle 3.6 instance (on a publicly accessible server): create a course create 3 users with the following details: Given name: Siân Family name: Instructor Email: sian@imscert.org ID number: sis:sian Role: Teacher Given name: John Family name: Student Email: john@imscert.org ID number: sis:sian Role: Student Given name: Gill Family name: O'post-rophe Email: gill@imscert.org ID number: sis:gill Role: Student Log in as Siân add an LTI 1 external tool with a launch URL of https://lti.tools/saltire/tp a consumer key of "moodle" and a secret of "secret" add an LTI 2 tool using a registration URL of https://lti.tools/saltire/tp - just submit the tool proxy with the default options launch each tool and keep a copy of the message parameters section log in as John launch each tool and keep a copy of the message parameters section Upgrade Moodle instance to 3.7dev Check existing links: Log in as Siân Launch each tool and keep a copy of the message parameters section - other than OAuth parameters, they should be identical to the original copy Log in as John Launch each tool and keep a copy of the message parameters section - other than OAuth parameters, they should be identical to the original copy IMS LTI Certification Suite Open certification suite at  https://www.imsglobal.org/lti-certification-suite and follow the "Process for Tool Consumers" option at the bottom (requires IMS login) Enter "Moodle" and "3.7" on the configuration page and click "Save settings" Log in as a System Administrator Create the two courses outlined in the instructions displayed (enter an ID number for each course) Test LTI 1.0/1.1: Create an LTI 1 tool using the details provided by the certification suite - select the "Show in activity chooser and as a preconfigure tool" Tool configuration usage option, "New window" for the Default launch container option and check the Content-Item Message box Login is as Siân Add 3 links as per suite instructions Run through LTI 1 certification tests - most tests can be completed by launching each of the 3 links by each of the 2 users, then use the "Select Content" option when creating a new link, and run all the tests of services from the results page of the suite Run MDL-60416 tests (note that a 401 error should be expected rather than a 403 error as per the instructions.) Test LTI 2: Register LTI 2 tool to certification suite Add a link using the new tool Run through LTI 2 certification tests - most tests can be completed by launching each of the 3 links by each of the 2 users, then use the "Select Content" option when creating a new link, and run all the tests of services from the results page of the suite Run MDL-60416 tests (note that a 401 error should be expected rather than a 403 error as per the instructions.) Test LTI 1.3 Generate a private/public key at https://lti-ri.imsglobal.org/   Open certification suite at https://ltiadvantagevalidator.imsglobal.org/ltiplatform (requires IMS login) Proceed through to the Tool configuration page Log into Moodle as System Administrator Create a manual tool - set LTI version to 1.3, copy the  Initiate Login URL, Redirection URIs, launch URL, Deep Linking (Content-Item) URL, paste in the public key generated above, select the "Show in activity chooser and as a preconfigure tool" Tool configuration usage option, "New window" for the Default launch container option and check the Content-Item Message box All Privacy options should beleft as Delegate to teacher Select the bottom option for each of the services Save the tool In the certification suite, do not select any of the Start Testing With options Click next for the Platform Configuration page Click the View configuration details button for the tool in Moodle and copy the details into the certification suite (iss = platform ID, well-known Url = public keyset URL, OAuth Bearer Retrieval Url = access token URL Copy in the generated private key Click next Log into Moodle as Siân Add a link to the new tool in each of the two courses Log into Moodle as John Launch one of the links (should generate a P ayload Received message) Click Continue in the certification suite Run each test: click on Test options click Submit Test click Confirm Results if you get an error it is likely that the launch message has timed out - just launch again and re-re-run the test click in Next Test repeat! NB ignore any error with the lti11_legacy_user_id At some point the tool will need to be re-configured to stop sending personal data - this can be done via the settings for the link being used to launch from At some point it will ask you to launch as an Instructor so you will need to log out and back in as Siân (set the Privacy options to send personal data when you do - you will be asked again later to disable them) Run unit tests
    • Affected Branches:
      MOODLE_35_STABLE
    • Pull from Repository:
    • Pull Master Branch:

      Description

      LTI 1.3 is being released this year. We should make sure Moodle has support for it.

        Attachments

          Issue Links

            Activity

              People

              • Votes:
                9 Vote for this issue
                Watchers:
                15 Start watching this issue

                Dates

                • Created:
                  Updated: