-
Bug
-
Resolution: Fixed
-
Major
-
3.2.1
-
MOODLE_32_STABLE
-
MOODLE_32_STABLE
-
MDL-57613-master -
Easy
-
- Check the {mdl}_enrol_lti_lti2_nonce has a length of 64 (e.g. value: character varying(64) [])
Steps:
In moodle as LTI provider:
1. Enable LTI authentication.
2. Enable LTI enrollment.
3. Publish course as LTI.
In Canvas as a consumer:
4. Go to Canvas consumer course.
5. Add an external app using the cartridge xml url and the secret.
6. Test if Moodle content displays correctly in Canvas.
Expected behavior:
I should be able to see Moodle content inside Canvas.
Actual behavior:
Unable to see Moodle content in Canvas.
And, I see the following error in Moodle error logs:
Error writing to database: Data too long for column 'value' at row 1\nINSERT INTO mdl_enrol_lti_lti2_nonce (consumerid,value,expires) VALUES(?,?,?)\n[array (\n 0 => '8',\n 1 => 'mXvVJzAqKCSsp9cEwK2Shqq8OnJ2wgsZTrz1KKfhPYQ',\n 2 => 1483995900,\n)] |
Observation:
The size limit for the column value in table mdl_enrol_lti_lti2_nonce is set to 32 but the nonce value coming from canvas is of 43 chars.
Bug reproduced on demo.moodle.net as well.