Closed MichaelRoytman closed 1 year ago
Base: 97.79% // Head: 97.78% // Decreases project coverage by -0.00%
:warning:
Coverage data is based on head (
cff7744
) compared to base (9c04004
). Patch coverage: 93.54% of modified lines in pull request are covered.
:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.
Description:
JIRA: MST-1717
This commit introduces a new
CourseWaffleFlag
lti_consumer.enable_external_user_id_1p1_launches
. When this flag is enabled for a course, LTI 1.1 XBlock launches in that course will send the user'sexternal_user_id
as theuser_id
attribute of the launch.external_user_id
is the user's external user ID as defined, created, and stored by theexternal_user_ids
Djangoapp in the edx-platform. When this waffle is not enabled for a course - the default case - LTI 1.1 XBlock launches in that course will continue to send the user'sanonymous_user_id
as theuser_id
attribute of the launch, as before.This provides an opt-in opportunity for courses to send a consistent, static, and opaque user identifier in an LTI 1.1 XBlock launch. This may be necessary for integration with LTI tools that require such an identifier.
Please be aware that toggling this flag in a running course carries the risk of breaking the LTI integrations in the course. This flag should also only be enabled for new courses in which no LTI attempts have been made.
Verification:
This change was manually tested using the testing instructions in the README via an integration with the saLTIre testing tool. Please see the screenshots below. They show two courses to demonstrate that, after the change, the
user_id
is the same.Before Change, Course 1:
Before Change, Course 2:
After Change, Course 1:
After Change, Course 2:
Testing:
In order to test these changes, follow these steps.
CourseWaffleFlag
indjango-waffle > Flags
. Name:lti_consumer.enable_external_user_id_1p1_launches
Leave the remaining fields as the default.CourseWaffleFlag override
inWaffle_Utils › Waffle flag course overrides
. Waffle flag:lti_consumer.enable_external_user_id_1p1_launches
Course id:user_id
attribute in theMessage Parameters
section.