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
Webサービス開発とSPAの認証の話 / spa-and-identity
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Takahiro Tsuchiya
May 29, 2019
Technology
3k
9
Share
Webサービス開発とSPAの認証の話 / spa-and-identity
SPAとサービス開発と認証への気持ちをまとめました
Takahiro Tsuchiya
May 29, 2019
More Decks by Takahiro Tsuchiya
See All by Takahiro Tsuchiya
PicoRubyでLチカ
corocn
0
170
Kaigi on Rails 2024 - Rails APIモードのためのシンプルで効果的なCSRF対策 / kaigionrails-2024-csrf
corocn
13
8k
現場のエンジニアから見た採用担当との協働
corocn
7
3.2k
シリーズAをリファラル採用中心に走り抜ける / leaner-referral-engineer-2024
corocn
4
2.4k
捨てて加速するプロダクト開発 / sutete-speedup-product-development
corocn
4
780
リファラル採用にフルベットしてみた
corocn
4
4k
エンジニアとプロダクトマネージャーを兼任した1年間を振り返る / pdm-furikaeri
corocn
17
8.3k
育休のすゝめ #devsumi 2023
corocn
3
5.4k
GCPでRubyを動かしている話 / ruby on gcp
corocn
0
1k
Other Decks in Technology
See All in Technology
ECSのTerraformモジュールにコントリビュートした話
harukasakihara
0
250
Redmine次期バージョン7.0の注目新機能解説 — UI/UX強化と連携強化を中心に
vividtone
1
190
20260516_SecJAWS_Days
takuyay0ne
2
530
障害対応のRunbookは作った、でも本当に動くの? AWS FIS で EKS の AZ 障害を再現してみた
tk3fftk
0
120
業務に残された「良くない型」で考える「TypeScriptの難しさ」
sajikix
2
690
キャリア25年目にしてTypeScript に出会うまで - 「型」を通じて振り返るプログラミング言語遍歴 / Meeting TypeScript After 25 Years in Tech - Looking Back at My Programming Language Journey Through "Types"
bitkey
PRO
1
110
マンション備え付けのネットワークとLTE回線を組み合わせた ネットワークの安定化の考案
harutiro
1
140
freeeで運用しているAIQAについて
qatonchan
1
660
社内RAGの導入で気を付けたポイント
yakumo
1
130
実践 TanStack Start ― 新規プロダクトを開発して確立した、サーバーとクライアント境界の設計パターン / Practical TanStack Start Server-Client Boundary Patterns
kaminashi
1
130
アプリブロック機能のつくりかたと、AIとHTMLの不合理な相性の良さについて
kumamotone
1
260
分断された OT と IT を繋ぐ架け橋 -Kubernetes が切り拓く 産業用組み込み製品の現在地 -
yudaiono
1
130
Featured
See All Featured
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
3.1k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Ethics towards AI in product and experience design
skipperchong
2
280
The Cost Of JavaScript in 2023
addyosmani
55
9.9k
Paper Plane (Part 1)
katiecoart
PRO
0
7.6k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.1k
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
Embracing the Ebb and Flow
colly
88
5k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
230
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.1k
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.5k
Transcript
8FCαʔϏε։ൃͱ 41"ͷೝূͷ *EFOUJUZ%BODF4DIPPMJEEBODF -FTTPOٕज़ॻయͱ%JHJUBM*EFOUJUZٕज़ ʢਫʣ 5BLBIJSP5TVDIJZB!DPSPDO
!DPSPDO 5BLBIJSP5TVDIJZB ͜ΖͪΌΜ
ࣗݾհ w ذෞݝࡏॅ w ϑϧϦϞʔτϫʔΫ!Ωϟελʔ w ਓҎ্͕ϦϞʔτϫʔΫ͍ͯ͠Δձࣾ w ຊۀ8FCαʔϏε։ൃ w
ηΩϡϦςΟΤϯδχΞͰͳ͍ w *EFOUJUZٕज़ڵຯͰͬͯΔ w ॳ৺ऀ͚ͱฉ͍͖ͯͨͷʹ᱐͞Εͨ w 3VCZ3BJMT 7VF "84 ($1 w "VUI"NCBTTBEPS bosyu
ΞδΣϯμ w ٕज़ॻయ Ͱॻ͍ͨຊͷհ w *EFOUJUZٕज़ʹର͢Δؾ࣋ͪͷڞ༗ w 41"ͷηογϣϯཧͷ
ࠓ͍͍ػձͳͷͰஏΛࡽ ͍ͯ͜͠͏͔ͱɾɾɾ
ٕज़ॻయͱͷؔΘΓ w લ৬ಉ྅ͱϊϦͰਃ͠ࠐΜͩͷ͕࠷ॳ w ٕज़ॻయ ͱԿ͔͠ΒͷܗͰࢀՃ w ౦ژͷೝূք۾ͷਓͨͪͱͷܨ͕Γ͕Ͱ͖ͨ w
ذෞͰೝূͬͯΔਓશવ͍ͳ͍ͷͰخ͍͠ w *%Ͳ͜Ζ͔8FCͬͯΔਓ΄ͱΜͲ͍ͳ͍ w ຊۀͰͬͯͳ͍ࣗʹͱͬͯେ͖ͳϞνϕ
ٕज़ॻయ w 7VFKTɺ/VYUKTΛͬͨ41"͕Γ্ ͕Γ͡Ίͨ࣌ظ w 41"ͷೝূʹ՝ҙࣝ w "VUIͬͯΈͨΒඇৗʹศརͩͬͨͷ͕ Ϟνϕ w
࣌ؒͰ෦ച w ΈΜͳҙ֎ͱೝূपΓʹࠔͬͯΔʁͱ͍͏ײ Λͬͨ w "VUIͷ$&0͕تΜͰ࣋ͬͯؼͬͨΒ͍͠ w ຊΛॻ͍ͨ͜ͱͰதͷਓͱͷܨ͕Γ͕Ͱ͖ ͨ
None
ۀࢴ w ༰ಉ͡ w "VUIͷதͷਓʹϨ Ϗϡʔͯ͠ΒͬͨΓ w ྦྷܭͰ෦͙Β͍ʁ ʢ,JOEMFͷηʔϧͱ͔Ͱ ͦͦ͜͜ചΕͨΓʣ
w ࠓݟΔͱஏ͔͍ͣ͠આ໌ͳ ͷͰͱͯվగ͍ͨ͠
ٕज़ॻయ w લ৬Ͱ߹ಉࢴΛग़ͨ͠ w %FW0QTϝΠϯͷ w τʔΫϯͷΛগ͠ w ͬͨࣽ͝ຊചΕʹ͍͘ w
એΊͬͪΌେࣄ
ٕज़ॻయ w ٕज़ॻయͷͱ͖ʹ!XBUBIBOJ ͞Μʹձͬͨͷ͕͖͔͚ͬ w ඒຯ͍͠মʹΒΕͯدߘ w 8FC"VUIOͰΫοΩʔηογϣ ϯ͍ͨ͘ͳ͍ͱ͍͏ڧ͍ؾ࣋ͪ w
'*%0αʔόʔΛηογϣϯϨε Ͱ࣮ͯ͠Έͨ w 3VCZ3BJMTͰύεϫʔυϨε ͍͖͍ͬͯͨ
https://twitter.com/kaitendaentai/status/1052689241744896001
https://twitter.com/kaitendaentai/status/1052689241744896001 ٕज़ॻయ ग़ͨ࣌͠
https://twitter.com/kaitendaentai/status/1052689241744896001 ٕज़ॻయ ग़ͨ࣌͠ ٕज़ॻయ ग़ͨ࣌͠ ٕज़ॻయ ग़ͨ࣌͠ ݱࡏ
https://twitter.com/kaitendaentai/status/1052689241744896001 ٕज़ॻయ ग़ͨ࣌͠ ٕज़ॻయ ग़ͨ࣌͠ ٕज़ॻయ ग़ͨ࣌͠ ͜ͷΜ ࢦ͍ͨ͠ ݱࡏ
ݱঢ়ͷؾ࣋ͪͷڞ༗ w ݸਓతͳͩͱೝূɺೝՄٕज़ָ͍͠ w ͔͠͠ʜ w αʔϏε։ൃऀͱͯ͠ఏڙ͍ͨ͠αʔϏεͷʮຊ࣭ʯͰͳ͍ w ͪΖΜ69ͷ্Լʹܨ͕ΔͷͰେࣄ w
झຯͳΒ·ͩ͠ϏδωεϢʔεͩͱࣗ࡞ා͍ w ηΩϡϦςΟϗʔϧ࡞Γͦ͏ w ಛʹελʔτΞοϓଞʹ࡞Δ͖ͷͨ͘͞Μ͋ΔͷͰ w ͱ͍͑ཧղͯ͠ͳ͍ͱ*%BB4ͱͷ࿈ܞͦ͠͏ w ৄ͘͠ΕΔ΄Ͳʮ͍͍ͬͨԿ͕ਖ਼͍͠ΜͩɾɾɾʯˡΠϚίί
Ͱ͖Εࣗ࡞ͤͣؤுΓ͍ͨ w ։ൃεϐʔυΛग़ͨ͢Ίͷ*%BB4ͱ͍͏બ w ͱͱ*%BB4&OUFSQSJTFͳೝࣝͩͬͨ w #UP$Ͱ͑ͦ͏ͳ*%BB4͕૿͖͑ͯͨ w ศརͳͷ͑Δ͚͍͖͍ͩͬͯͨ w
αʔϏε্ཱͪ͛࣌ʹΨνΨνʹࣗ࡞͢Δͷɺඞཁʁ w దʹ*%BB4ΛऔΓೖΕΒΕΔ͕ࣝ΄͍͠ w ࠷ۙ"VUIMFUFʹڵຯͰͯΔ
Ξτϓοτ͍͠ w ࣝΛʹ͚ͭΔ্ͰΞτϓοτେࣄ w ͰηΩϡϦςΟͬͯਆܦ࣭ͳʹͳΓ͕ͪ w ࣮ࡍͷϢʔεέʔεʹԊͬͨ༰Λެ։ͮ͠Β͍ w ݟ͕ΫϥΠΞϯτϫʔΫͷձࣾʹدΓ͕ͪʁ w
ਖ਼͘͠ཧղͯ͠ਖ਼͘͠ॻ͔ͳ͍ͱΕͳ͘Ԍ্ w ਖ਼͘͠ཧղͰ͖Δͷ͍ͭͰ͔͢ʁ w ֤༷ͷղઆଟ͍͕͍ॴϢʔεέʔεʹԊͬͨগͳ ΊͳͷͰΠϯϓοτେม
Ҏલ͜Μͳ-5Λͨ͠ https://speakerdeck.com/corocn/next-geneartion-identity-auth0
+85͕ʹͳͬͨ࣌ظ w ʮͲ͏ͯ͠ϦεΫΞηεϝϯτͤͣʹ+85Ληογϣϯ ʹͬͪΌ͏Θ͚ʁʯ w ʮ+85ೝূɺศརΜʁʯ w IUUQTBVUIIBUFOBCMPHDPNFOUSZ w
தͷਓΛΘͤͨΑ͏ͳهࣄ͕ʢதͷਓͰͳ͔ͬͨʣ w -5ͷલ͙Β͍ͩͬͨͷͰϏΫϏΫ͍ͯͨ͠
࠷ۙͷٙ
41"Ͱ+85Ͱηογϣϯ ཧͨ͠Β͔͋Μͷʁ
41"ͱ w ୯Ұϖʔδ +4 ओʹ3&45"1*ͷίϯς ϯπΓସ͑Ͱߏ͞ΕΔ8FCΞϓϦ w Ϧονͳ6*Λఏڙ͍͢͠ w ϑϩϯτͱόοΫΤϯυΛͰ͖Δ
w ϞόΠϧϑΝʔετͰ࡞ͬͨ"1*ͷྲྀ༻ w ৫ߏʢઐੑɾۀʣͳഎܠ͋Γͦ͏
41"ͷηογϣϯཧͷ w ʮMPDBM4UPSBHFʹอଘͨ͠Β͑͑Ζʂ͆ʯ w ͦ͏ࢥ͍ͬͯΔ࣌ظ͕ࢲʹ͋Γ·ͨ͠ w 944ʹऑ͍͔Βൈ͔ΕΔ w ˢͳ͍Α͏ʹ࡞Δͷ͕جຊ͚ͩͲݶք͋Δ w
5PLFOηΩϡΞʹอͰ͖ͳ͍ w "84"NQMJGZ͘ͳΜͱ͔ͯ͋͛ͯ͠ w ϞόΠϧͷ0"VUI 1,$&ͱಉ͡Α͏ʹ͍͔ͳ͍
$PPLJFPS5PLFO w ʮ$PPLJF͓͏Ͷʯೝ͍ࣝͯ͠Δ w αʔόʔϨε͕བྷΉͱτʔΫϯΛͬͨೝূͰ͍݁ͤͨ͞έʔε ଟʑ͋Δ w 41" αʔόʔϨεͳ։ൃ͕ʑ૿͍͑ͯΔ w
ࠓޙˢͳεΩϧηοτΛ࣋ͭਓ૿͑ͯ͘ΔͩΖ͏ w ϞόΠϧͱಉ͡ํ๏Ͱѻ͑ͳ͍͔ w ϞόΠϧ8FCҰॹʹ࡞Δέʔεͦ͜·Ͱͳ͍ͱࢥ͍ͭͭ w ҰาҾ͍ͯݟͨ࣌ʹDPPLJFDPPLJFͰѻ͍͍͠ w ͍׳ΕͯΔɺੜଘόΠΞε
*%BB4ͬͨ߹Ͳ͏͔ w *%BB4ͱηΩϡΞʹηογϣϯҡ࣋Ͱ͖͍ͯΕ+85Ͱ"1*ͷೝূ͍ͯ͠ ͍ͷͰʁ w *%BB4ଆʹػೳ͕͋Ε w ۩ମతʹ w 41"Ͱ࡞͞Εͨϖʔδදࣔ࣌ʹ*%BB4͔Βຖճ+85Λ͍ग़͢
w JONFNPSZͰ+85Λཧͯ͠ӬଓԽ͠ͳ͍ w +85ͷ༗ޮظݶՄೳͳݶΓ͘ w ϔομʹͤͯ"1*+85Λݕূ͢Δ͚ͩ w ͜ͷΈͳΒ+85ʹدͤΒΕΔͷͰʁ w ͋Μ·Γࣗ৴ͳ͍ͷͰϦεΫʹ͍ͭͯͬͱΓ͍ͨ
ͦͷଞͷϑϩϯτΤϯυٕज़ͱೝূ w 41" 443ʢ4FSWFS4JEF3FOEFSJOHʣ w 4FSWJDF8PSLFSͰτʔΫϯߋ৽ w Ұ୴ߟ͑ͨ͘ͳ͍ɾɾɾ w 443ͦͦαʔόʔ͋Δ͔Βɾɾɾ
w 41"ΛϞόΠϧͱಉྻͰߟ͑ͨ͘ͳΔࣗͷࢥ ߟճ࿏͕ΑΖ͘͠ͳ͍͔
·ͱΊ w ٕज़ॻయָ͍͔͠ΒΈΜͳຊॻ͜͏ʂใ Ξτϓοτͨ͠ਓʹू·Δ w ઐԽۀԽ͕ਐΜͰ͖ͨͷͰɺͦΕͧΕΛ ͭͳ͛Δ͞ΒʹॏཁੑΛ૿ͦ͠͏ w ΑΓָʹγϯϓϧ͔ͭηΩϡΞΛߟ͍͍͑ͯ ͖͍ͨ