Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Open edX Con 2017 — OAuth Lighting Talk
Search
Miguel Amigot
May 25, 2017
Education
1
140
Open edX Con 2017 — OAuth Lighting Talk
Using Open edX's OAuth-based authentication system to extend the platform
Miguel Amigot
May 25, 2017
Tweet
Share
Other Decks in Education
See All in Education
IKIGAI World Fes:program
tsutsumi
1
2.6k
✅ レポート採点基準 / How Your Reports Are Assessed
yasslab
PRO
0
160
Microsoft Office 365
matleenalaakso
0
2k
Web Application Frameworks - Lecture 3 - Web Technologies (1019888BNR)
signer
PRO
0
3.2k
The knowledge panel is your new homepage
bradwetherall
0
220
Web 2.0 Patterns and Technologies - Lecture 8 - Web Technologies (1019888BNR)
signer
PRO
0
3k
Introduction - Lecture 1 - Web Technologies (1019888BNR)
signer
PRO
0
5.8k
The browser strikes back
jonoalderson
0
120
いわゆる「ふつう」のキャリアを歩んだ人の割合(若者向け)
hysmrk
0
280
XML and Related Technologies - Lecture 7 - Web Technologies (1019888BNR)
signer
PRO
0
3.2k
JavaScript - Lecture 6 - Web Technologies (1019888BNR)
signer
PRO
0
3.1k
1125
cbtlibrary
0
140
Featured
See All Featured
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.7k
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
980
Automating Front-end Workflow
addyosmani
1371
200k
Test your architecture with Archunit
thirion
1
2.1k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.1k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.8k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.7k
A Modern Web Designer's Workflow
chriscoyier
698
190k
So, you think you're a good person
axbom
PRO
0
1.8k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
Visualization
eitanlees
150
16k
Transcript
OPEN EDX & OAUTH2 Scalable Extensions to the Platform Miguel
Amigot CTO
WHY THIS IS INTERESTING
OPEN EDX IS INCREASINGLY MOVING TO MICROSERVICES
CAN DEPLOY SEPARATE WEBSITES AND SERVICES
USE CASES Insights and Ecommerce (already) 1 Customized admin dashboards
2 3 Instructor news feed?
INSIGHTS
HOW DO WE HANDLE USER ACCOUNTS?
SINGLE SIGN-ON Use edx-platform’s data 1 Referenced — but keep
sessions 2 3 Single sign-on & single sign-out
HOW DOES THIS WORK?
OAUTH (MOSTLY) edx/edx-platform Provider Clients edx-analytics-dashboard ecommerce credentials
OAUTH (SIMPLIFIED) Register the client on edx/edx-platform (get an app
client ID and a client secret) 1 2 Exchange these credentials on the client for access tokens and use these to get resources
/admin/oauth2/client/add/
BUT OAUTH DOESN’T SAY WHO THE USER IS…
…SINCE THE ACCESS TOKEN IS OPAQUE TO THE CLIENT
oauth.net/articles/authentication
SUPPLEMENT OAUTH WITH OPENID CONNECT
OPENID CONNECT OAuth client IDs, client secrets and access tokens
+ A user identifier attached to each request
EDX HAS AN OPENID CONNECT AUTH BACKEND
edx/auth-backends
CALLING IT FROM EACH CLIENT
pip install edx-auth-backends
settings/base.py
Login and Logout URLs
MAIN POINTS EdX is moving to microservices… and auth is
obviously ready 1 Built on popular standards: OAuth and OpenID Connect* 2 3 Easy to build separately scalable services with user auth
QUESTIONS?
[email protected]
@miguelamigot