mirror of
https://github.com/moodle/moodle.git
synced 2025-04-21 16:32:18 +02:00
MDL-76821 enrol_lti: prevent legacy launches via upgraded enrolment
If the enrolment instance (the 'published resource') has been upgraded from LTI 1.1/2.0 to LTI 1.3 (i.e. a new instance was not created), prevent legacy launches which may occur from old resource links. Only LTI Advantage launches should be permitted through the method.
This commit is contained in:
parent
22c346831e
commit
b3feea921d
@ -54,6 +54,7 @@ $string['enrolenddate'] = 'End date';
|
||||
$string['enrolenddate_help'] = 'If enabled, users can access until this date only.';
|
||||
$string['enrolenddateerror'] = 'Enrolment end date cannot be earlier than start date';
|
||||
$string['enrolisdisabled'] = 'The \'Publish as LTI tool\' plugin is disabled.';
|
||||
$string['enrolltiversionincorrect'] = 'The resource is not set up for use over legacy LTI (versions 1.1/2.0). Please contact the administrator of this tool.';
|
||||
$string['enrolperiod'] = 'Enrolment duration';
|
||||
$string['enrolperiod_help'] = 'Length of time that the enrolment is valid, starting with the moment the user enrols themselves from the remote system. If disabled, the enrolment duration will be unlimited.';
|
||||
$string['enrolmentfinished'] = 'Enrolment finished.';
|
||||
|
@ -53,6 +53,12 @@ if ($tool->status != ENROL_INSTANCE_ENABLED) {
|
||||
exit();
|
||||
}
|
||||
|
||||
// Check if the enrolment instance has been upgraded to a newer LTI version.
|
||||
if ($tool->ltiversion != 'LTI-1p0/LTI-2p0') {
|
||||
throw new \moodle_exception('enrolltiversionincorrect', 'enrol_lti');
|
||||
exit();
|
||||
}
|
||||
|
||||
$consumerkey = required_param('oauth_consumer_key', PARAM_TEXT);
|
||||
$ltiversion = optional_param('lti_version', null, PARAM_TEXT);
|
||||
$messagetype = required_param('lti_message_type', PARAM_TEXT);
|
||||
|
Loading…
x
Reference in New Issue
Block a user