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

Dynamic registration JSON missing required "scope" property

XMLWordPrintable

    • MOODLE_400_STABLE
    • MOODLE_400_STABLE
    • MDL-74463-master
    • Hide

      Prerequisites

      1. You need two Moodle sites (localhost is fine) - one called 'platform' and one called 'tool'
      2. In the tool site admin settings:
        • Enable enrol_lti and auth_lti plugins
        • Enable "Allow frame embedding"
      3. In BOTH sites:
        • Go to "Administration > Security > HTTP security" and clear all values from the 'curlsecurityblockedhosts' admin setting and save. (to permit localhost-to-localhost calls)

      Generate a registration URL in the tool site

      1. As an admin, in the tool site, go to Admin > Plugins > Enrolment plugins > Publish as LTI tool > Tool registration
      2. Create a new registration, setting the name to "Test Moodle platform"
      3. When you're presented with the endpoints, copy the registration URL.
      4. In a separate browser tab, log in to the platform site.
      5. Go to Site admin > Plugins > Activities > External tool > Manage tools
      6. Paste the URL into the text field and select "Add LTI Advantage"
      7. When the process completes and the new tool card is shown, click to edit the tool
      8. Expand "Services"
      9. Verify that:
        • "IMS LTI Assignment and Grade Services" is set to "Use this service for grade sync and column management"
        • "IMS LTI Names and Role Provisioning" is set to "Use this service to retrieve members' information as per privacy settings"
      10. Expand "Privacy"
      11. Verify that "Accept grades from the tool" is set to "As specified in Deep Linking definition or Delegate to teacher"
      Show
      Prerequisites You need two Moodle sites (localhost is fine) - one called 'platform' and one called 'tool' In the tool site admin settings: Enable enrol_lti and auth_lti plugins Enable "Allow frame embedding" In BOTH sites: Go to "Administration > Security > HTTP security" and clear all values from the 'curlsecurityblockedhosts' admin setting and save. (to permit localhost-to-localhost calls) Generate a registration URL in the tool site As an admin, in the tool site, go to Admin > Plugins > Enrolment plugins > Publish as LTI tool > Tool registration Create a new registration, setting the name to "Test Moodle platform" When you're presented with the endpoints, copy the registration URL. In a separate browser tab, log in to the platform site. Go to Site admin > Plugins > Activities > External tool > Manage tools Paste the URL into the text field and select "Add LTI Advantage" When the process completes and the new tool card is shown, click to edit the tool Expand "Services" Verify that: "IMS LTI Assignment and Grade Services" is set to "Use this service for grade sync and column management" "IMS LTI Names and Role Provisioning" is set to "Use this service to retrieve members' information as per privacy settings" Expand "Privacy" Verify that "Accept grades from the tool" is set to "As specified in Deep Linking definition or Delegate to teacher"
    • 1

      The tool registration code was based on an internal draft version of the spec, which indicated that scopes were included inside the "https://purl.imsglobal.org/spec/lti-tool-configuration" property. Somewhere along the line, this changed, and instead should be included as a string list of scopes under the "scope" property (a required property). The spec detailing this can be seen here: https://www.imsglobal.org/spec/lti-dr/v1p0#tool-configuration

      This is evident when testing Moodle-to-Moodle LTI via dyn reg. E.g.

      1. See Publish as LTI tool docs for LTI tool site setup
      2. Create a registration in the tool and copy the dynamic registration URL
      3. Go to the platform site and go to Site admin -> External tool -> Manage tools.
      4. Paste the registration URL in to the text input and click "Add LTI Advantage"
      5. When the tool card is created, edit the tool settings
      6. Review the services section
        Expected: Services (Assignment and grades & Names and roles) are enabled already (as part of the registration)
        Actual: They are set to "Do not use this service" (disabled, but can be enabled manually)
      7. Expand "Privacy"
        Expected: "Accept grades from the tool" is enabled is set to "As specified in Deep Linking definition or Delegate to teacher"
        Actual: "Accept grades from the tool" is set to "Never".

            jaked Jake Dallimore
            jaked Jake Dallimore
            Mathew May Mathew May
            Shamim Rezaie Shamim Rezaie
            Gladys Basiana Gladys Basiana
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated:
              Resolved:

                Estimated:
                Original Estimate - Not Specified
                Not Specified
                Remaining:
                Remaining Estimate - 0 minutes
                0m
                Logged:
                Time Spent - 1 hour, 35 minutes
                1h 35m

                  Error rendering 'clockify-timesheets-time-tracking-reports:timer-sidebar'. Please contact your Jira administrators.