Uploaded image for project: 'Sakai'
  1. Sakai
  2. SAK-44120

Add feature to allow LTI Custom Substitution Values From sakai.properties

    XMLWordPrintable

    Details

    • 20 status:
      Resolved
    • Property addition/change required:
      Yes
    • Test Plan:
      Hide

      Add some values to sakai.properties, add some custom variables to a tool, do a launch and verify that the the custom values are sent.

      Show
      Add some values to sakai.properties, add some custom variables to a tool, do a launch and verify that the the custom values are sent.

      Description

      IMS LTI has a feature called "Custom Parameter Substitution"

      http://www.imsglobal.org/spec/lti/v1p3/#customproperty

      A tool can put in a custom variable into its configuration like:

      groovy=$Person.name.full

      And when the tool is launched the "$Person.name.full" will be replaced by the user's full name and sent to the tool as a custom parameter.  These are only substitution values and are only sent if "requested" by the tool in the custom values section.

      This JIRA adds the feature where we can set a value in sakai.properties that defines a custom parameter substitution string by adding a lines like:

      lti.custom.substitution.org.tsugi.theme.dark=#0000FF
      lti.custom.substitution.org.tsugi.theme.dark-accent=#0000EE

      The first half "lti.custom.substitution." indicates to Sakai that this is to be made available to the tool as a custom substitution.  The second half defines the custom substitution course string.  For example is the tool had this in its custom area:

      tsugi_theme_dark=$org.tsugi.theme.dark
      zippy_accent=$org.tsugi.theme.dark-accent

      When then tool was launched the following custom variables would be sent:

      tsugi_theme_dark=#0000FF
      zippy_accent=#0000EE

      It is important to note that these values will be available to any tool - and some tools set their own custom parameters in the Deep Link / Content Item flow.  So do not place any sensitive information in these properties in sakai.properties.  This is why the values have a long prefix - "lti.custom.substitution" - so we don't mistakenly allow tools to read general values in sakai.properties.

      Note that I have marked this as "change to sakai.properties" - there is no real change required - but there is new documentation that needs to be written for this new convention.

       

       

       

        Gliffy Diagrams

          Zeplin

            Attachments

              Issue Links

                Activity

                  People

                  Assignee:
                  csev Charles Severance
                  Reporter:
                  csev Charles Severance
                  Votes:
                  0 Vote for this issue
                  Watchers:
                  1 Start watching this issue

                    Dates

                    Created:
                    Updated:
                    Resolved:

                      Git Integration