Open edX SSO SMAL 2 IdP

Hi all,

I have a question:
my Open-Edx version Hawthorn

I’ll integrate with a third party by SSO SAML 2. I need to make Open-Edx as Identity Provider for the third party and I’ll build the custom app in Django for that.

could anyone explain how to do it?

Actually, I built before many custom apps on Open-Edx but I do not have knowledge of how to do it SSO SAML 2 Idp

Hi @muneera_salah,

The easiest way is likely to integrate an existing Django IDP implementation. I am not personally familiar with any, but djangosaml2idp seems like it might work, and should be the least work to integrate into Open edX, since it’s already an installable django app.

Hi @muneera_salah I am wondering if you were able to integrate with a third party with SSO SAML2 successfully.
Since Hawthorn is only compatible with Python 2.7, and Djangosaml2idp requires Python 3.x.
Could you kindly share your experience and in case the library didn’t work, have you found any other options for configuring OpenedX as IdP?


@Dayeon_Lee sure.

I used Djangosaml2idp(IDP) as a separate system to configure any service provider (SP) that I need to integrate with it.

then I enable (SP) for OpenEdx then I integrated it with Djangosaml2idp.
at the following, more details about OpenEdx SP SAML may help you.

After that, I did manipulate at login code in Openedx to redirect users to login by Djangosaml2idp rather than Openedx login. That will help you to login 2 systems (Djangosaml2idp and Openedx)at the same time, which is will help you later to go to any other system (Sps) by Djangosaml2idp.

To summarize, At following step about how users navigate between systems:
1- go Openedx site, then press the login link.
2- redirect users to Djangosaml2idp site, the login.
3- redirect users again to the Openedx site.
4- then users can go to any other (Sps) systems if is it configured at Djangosaml2idp.

hopefully, it is clear.