Hi everyone,
The “legacy” learning experience has, for a long time, supported Hinted Sign-In (aka “TPA[1] hints”), which is the ability to simultaneously log a learner into a third-party single sign-on service (an OAuth2 provider or a SAML idP), and then immediately redirect them to course content.
People would typically use that to allow learners to access a course start page, or the course About page, while simultaneously authenticating against the SSO service, like so:
https://my-openedx.foobar.com/courses/course-v1:foobar+mycourse+myrun/about?tpa_hint=saml-blah
A link like this would first authenticate the learner against the SAML idP with the slug blah
, and once properly authenticated, the learner would land on the About page for the myrun
run of the mycourse
course in the foobar
organization. (There, they could presumably hit the course enrollment button.)
This behavior doesn’t appear to work as documented at all in Nutmeg, even in the legacy learning experience. The tpa_hint
parameter is apparently simply ignored.
What does work, though, again in the legacy learning experience, is hand-crafting the URL that adding the tpa_hint
parameter is supposed to create, namely:
https://my-openedx.foobar.com/auth/login/tpa-saml/?auth_entry=login&idp=blah&next=%2Fcourses%2Fcourse-v1%3Afoobar%2Bmycourse%2Bmyrun%2Fabout
That is, the learner hits the /auth/login/tpa-saml/
path, with the following query params:
-
auth_entry
, which must be the stringlogin
, -
idp
, which must be the SAML IdP slug, -
next
, which must be the URL-encoded path of the page to redirect the user to.
Clearly, though, that approach will only work for
- deep-linking course content in the legacy learning experience,
- linking to the About page (which, to the best of my knowledge, is still rendered by the legacy LMS even on systems where the learning MFE is enabled, because it does not appear to have an equivalent in the Learning MFE),
- linking to any static other URLs exposed by the LMS,
but not for deep-linking anything that lives in MFEs.
So, I have a couple of questions here:
- How can I craft TPA hinted deep-links into course content rendered by the Learning MFE?
- What is the deal with the About page? Is it going away in Olive? Or does it move into the Learning MFE? Or something else?
Thanks in advance for any insight you might be able to share on the matter.
-
“TPA” standing for “third-party authentication”. ↩︎