Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
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
コマンドラインを見直そう(1995年からタイムリープ)
sapi_kawahara
0
690
Pen-based Interaction - Lecture 4 - Next Generation User Interfaces (4018166FNR)
signer
PRO
0
2.1k
LotusScript でエージェント情報を出力してみた
harunakano
0
140
TeXで変える教育現場
doratex
1
18k
【dip】「なりたい自分」に近づくための、「自分と向き合う」小さな振り返り
dip_tech
PRO
0
260
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.3k
悩める リーダー達に 届けたい書籍|レジリエントマネジメント 書籍イントロダクション-260126
mimoza60
1
390
Use Cases and Course Review - Lecture 8 - Human-Computer Interaction (1023841ANR)
signer
PRO
0
1.4k
GitHubによるWebアプリケーションのデプロイ / 07-github-deploy
kaityo256
PRO
1
180
Adobe Express
matleenalaakso
2
8.2k
Activité_5_-_Les_indicateurs_du_climat_global.pdf
bernhardsvt
0
200
多様なメンター、多様な基準
yasulab
6
19k
Featured
See All Featured
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
62
51k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.2k
How STYLIGHT went responsive
nonsquared
100
6k
BBQ
matthewcrist
89
10k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.4k
Rails Girls Zürich Keynote
gr2m
96
14k
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
140
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.2k
How to Ace a Technical Interview
jacobian
281
24k
Unsuck your backbone
ammeep
672
58k
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