External tool (LTI) workflow change after upgrading to Moodle 4.5.4

External tool (LTI) workflow change after upgrading to Moodle 4.5.4

by Sayori Tatsuki -
Number of replies: 4

Hello,

After upgrading from Moodle 4.1.15 to 4.5.4, we noticed that the "External tool" option is no longer directly available in the "Add an activity or resource" menu.

In Moodle 4.1.x:
- Site administrators registered the LTI tool with consumer key and shared secret.
- Course teachers could simply add an activity, select "External tool", and only enter the Tool URL (different per content).
- This allowed teachers to add LTI resources without knowing the secret credentials.

In Moodle 4.5.4:
- The activity chooser does not show "External tool" unless the tool is added via "More > LTI External tools".
- Course teachers are required to know consumer key and shared secret when adding new tools, which is not possible in our organization (these credentials are not shared with teachers).

Our ideal use case:
- Admins register LTI tools with credentials once.
- Course teachers should be able to add LTI activities only by specifying a Tool URL, as before.

Question:
- Is there any recommended workaround to allow course teachers to add LTI activities with only a Tool URL (without exposing consumer key/secret)?
- Or is this simplified workflow no longer supported in Moodle 4.3+?

Thank you very much for any guidance.

Average of ratings: -
In reply to Sayori Tatsuki

External tool (LTI) workflow change after upgrading to Moodle 4.5.4

by Jake Dallimore -
Picture of Core developers Picture of Moodle HQ Picture of Peer reviewers Picture of Plugin developers Picture of Testers
Hi Sayori,

Yes, this was changed in 4.3, as part of MDL-78573. Now, tools must be created at either site or course level (this part hasn't changed), and used at course level by enabling the tool for use in the activity chooser. It is no longer possible to create specific links using a domain-match approach like in your example, since we've removed that "External tool" link from the activity chooser. You must configure the tool and go via that link in the activity chooser.

Just to note also, this wasn't aimed at impacting your use case, but rather at closing the door on manually configured tool instances/links - those links which themselves contained the security credentials for the tool they linked to (key/secret for 1.1) and which left administrators with no control over tool use. It is now not possible to configure these, but that also means you're unable to use domain matching to an existing tool, like in your case.

In terms of a workaround, this depends on the tool. The expectation is that tools will make use of custom params to distinguish specific resources on the tool site, so instead of sharing a URL, you'd share a custom param and value pair. This is the same value that might be sent back from a tool during deep linking.

So, depending on the tool, you may be able to use the above workaround to create links for tool that is configured at site level (or course level for that matter). Are you able to use custom params?

Regards,
Jake
In reply to Jake Dallimore

External tool (LTI) workflow change after upgrading to Moodle 4.5.4

by Sayori Tatsuki -

Hi Jake,

Thank you very much for your kind and detailed response.
I understand now that the only way would be to use custom parameters, but unfortunately the external tool we are working with does not support them.

In this case, may I ask if there are really no alternative approaches available?
If not, I fully understand, but I just wanted to confirm before giving up on this requirement.

Thanks again for your helpful advice and your time.

Best regards,
Sayori

In reply to Sayori Tatsuki

External tool (LTI) workflow change after upgrading to Moodle 4.5.4

by Jake Dallimore -
Picture of Core developers Picture of Moodle HQ Picture of Peer reviewers Picture of Plugin developers Picture of Testers
Hi Sayori,

At the moment, that's right, since we're unable to configure a link by specifying a specific, custom URL (including any URL parameters). I suspect the tool you're using does not support deep linking either? Otherwise, you'd likely be able to use that as a potential workaround. If deep linking sends back a tool URL, we'll save it; it's just not present for editing in the form any more.

Am I right in assuming that the individual resources in your case are each identified by different URL parameters? I'm reading between the lines a little here, but just want to confirm that suspicion. I've seen that pattern used/mentioned elsewhere, and suspect it's what your tool is doing too. Basically, the tool security contract would sit at site level (like you said), and you'd then use different tool URLs (each with a different set of URL params) to identify different resources in the tool. The domain matching would have found the tool previously, and made the launch for the respective resource.
In reply to Jake Dallimore

External tool (LTI) workflow change after upgrading to Moodle 4.5.4

by Sayori Tatsuki -
Hi Jake,

Yes, you are right – in our case, each resource is identified by different URL parameters.
I also checked and tested deep linking, but as you suspected, the tool we are using does not support it.

Given this, we’ve decided to request the tool provider to add support in line with the Moodle updates.

Thank you very much for your clear explanations and guidance!

Best regards,
Sayori