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
Angular x Auth0 複数サービス展開での認証基盤を考える
Search
Hayato OKUMOTO
August 18, 2023
Programming
0
580
Angular x Auth0 複数サービス展開での認証基盤を考える
Startup Angular #6での発表資料です。
https://voicy.connpass.com/event/289575/
Hayato OKUMOTO
August 18, 2023
Tweet
Share
More Decks by Hayato OKUMOTO
See All by Hayato OKUMOTO
Railsアプリケーションと パフォーマンスチューニング ー 秒間5万リクエストの モバイルオーダーシステムを支える事例 ー Rubyセミナー 大阪
falcon8823
1
560
推し活を支えるAngularアプリ 量産体制
falcon8823
0
43
推し活の ハイトラフィックに立ち向かう Railsとアーキテクチャ - Kaigi on Rails 2024
falcon8823
8
5.7k
Angular Schematicsを利用した アプリ量産体制
falcon8823
0
210
iOSとIonicとHEIF画像
falcon8823
0
360
Ionicアプリのビルド自動化
falcon8823
0
34
Firebase Authentication - Ionic Meetup #12 Tokyo
falcon8823
0
300
IonicアプリをAuth0で認証する - Ionic Meetup #16 in Online
falcon8823
0
420
Other Decks in Programming
See All in Programming
Cursor AI Agentと伴走する アプリケーションの高速リプレイス
daisuketakeda
1
120
Java on Azure で LangGraph!
kohei3110
0
160
無関心の谷
kanayannet
0
180
Haskell でアルゴリズムを抽象化する / 関数型言語で競技プログラミング
naoya
17
4.8k
明示と暗黙 ー PHPとGoの インターフェイスの違いを知る
shimabox
1
120
カクヨムAndroidアプリのリブート
numeroanddev
0
430
Claude Codeの使い方
ttnyt8701
1
130
データベースコネクションプール(DBCP)の変遷と理解
fujikawa8
1
270
Webの外へ飛び出せ NativePHPが切り拓くPHPの未来
takuyakatsusa
1
170
つよそうにふるまい、つよい成果を出すのなら、つよいのかもしれない
irof
1
300
Bytecode Manipulation 으로 생산성 높이기
bigstark
2
360
Javaに鉄道指向プログラミング (Railway Oriented Pro gramming) のエッセンスを取り入れる/Bringing the Essence of Railway-Oriented Programming to Java
cocet33000
2
580
Featured
See All Featured
Documentation Writing (for coders)
carmenintech
71
4.9k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Scaling GitHub
holman
459
140k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
920
Typedesign – Prime Four
hannesfritz
42
2.7k
Into the Great Unknown - MozCon
thekraken
39
1.9k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
Building Applications with DynamoDB
mza
95
6.5k
Side Projects
sachag
455
42k
Rails Girls Zürich Keynote
gr2m
94
14k
Practical Orchestrator
shlominoach
188
11k
Transcript
Angular x Auth0 ෳαʔϏεల։Ͱͷೝূج൫Λߟ͑Δ גࣜձࣾTwoGate Ԟຊ ൏
2 ࣗݾհ Ԟຊ൏!GBMDPO@ w גࣜձࣾ5XP(BUFɹڞಉۀऀऔక$50 w 5XP(BUFۀظ͔Βͷٕज़Ϧʔυͱͯ͠ w ࠓͰ w
࠷ۙͷٕज़τϐοΫ w ೝূج൫ "VUI ͦͷଞ σʔλج൫ߏங #JH2VFSZ USPDDP
ࣄۀ༰ ɾΤϯλϝྖҬͷ4BB4։ൃʢϞόΠϧΦʔμʔ͘͡&$ίϛϡχςΟΞϓϦʣ ɾ4IPQJGZͰͷ&$αΠτ։ൃ ɾ###&ྖҬͷڞࣄۀ։ൃ 3 ձࣾ֓ཁ https://twogate.com/ ઃཱ ɾ݄ઃཱʢظʣ ɾνʔϜͱͯ͠
ɾ໊த໊ͷߴઐੜͰۀɹݱࡏɺϑϧλΠϜ໊نʹ
4 5XP(BUFͷٕज़ελοΫ αʔόαΠυ ϑϩϯτΤϯυ ։ൃڥ Πϯϑϥ
5 4IPQJGZ1BSUOFSPGUIF:FBSडاۀ w 4IPQJGZ&DPNNFSDF"XBSE w 4IPQJGZ1BSUOFSPGUIF:FBS ଟͷ࣮Λදজ͞Εɺ4IPQJGZ+BQBOΑΓ̎ͷදজΛड͚͍ͯ·͢ɻ
5XP(BUFͷϓϩμΫτ
7 /PDPEF-PXDPEFιϦϡʔγϣϯ ϞόΠϧΦʔμʔ (ΞϓϦ) ΦϯϥΠϯΨνϟ (Web) ެࣜΞϓϦ (ΞϓϦˍ̬eb) Nocode Low
code
8 ##ڞϓϩμΫτ ళ͚ ίϛϡχέʔγϣϯπʔϧ PCͰͷಇ͖ํ ՄࢹԽπʔϧ
Angular x Auth0 ෳαʔϏεల։Ͱͷೝূج൫Λߟ͑Δ
w αʔϏεͷೝূͲ͏ͯ͠·͔͢ʁ w ΞϓϦʴ8FCఏڙͷೝূͲ͏ͯ͠·͔͢ʁ w #$##ͷαʔϏεఏڙ 10 ຊ
w ࣄۀن͕֦େ͢Δʹ࿈ΕͯɺෳαʔϏεల։αϒαʔϏεͰͷల։Λߟ͑࢝ΊΔɻ w ಉ͡ϢʔβͰͷΫϩεηϧͰͷαʔϏεల։ w ಛʹ࠷ۙͷ##4BB4Ͱͦͷߴ͘ͳΓͭͭ͋Δ 11 ϚϧναʔϏεͷೝূΛߟ͑Δ
w #$αʔϏε w ແྉ͔Β࢝·Δ w Ϣʔβ୯Ձ͍ w ΞΫςΟϒ͍ w Ϣʔβ୯ҐͰͷཧ
w ݸਓใ͕ͳ͚ΕϦεΫ w ##αʔϏε w ༗ྉܖ w Ϣʔβ୯Ձߴ͍ w ΞΫςΟϒߴ͍ w ॴଐ৫Ͱͷू߹ͷཧ w औΓѻ͍ใͷॏཁੑ͕ߴ͍ 12 αʔϏεಛੑͰ࠾༻͖͢ೝূج൫ҟͳΔ αʔϏεಛੑʹԠͨ͡ೝূج൫ͷࢿ͕ඞཁ
w ಠ࣮ࣗ w 'JSFCBTF"VUIFOUJDBUJPO ($1*EFOUJUZ1MBUGPSN w "VUI w "84$PHOJUP
w "[VSF"%#$ 13 ೝূιϦϡʔγϣϯ
w ͍ͬͯΔਓଟ͍ͱࢥ͏ͷͰׂѪ w ϞόΠϧϑΝʔετͳΞϓϦͩͱ࠾༻࣮͕૿͖͑ͯͨҹ w 5(Ͱ͍ۙ0&.ΞϓϦͰ׆༻͍ͯ͠·͢ w ͍ͮΒ͍ͱ͜Ζ w γϯάϧαΠϯΦϯతͳಈ͖αϙʔτ֎ʢΞϓϦϒϥβͰͦΕͧΕηογϣϯΛ࣋ͭ
ͨΊʣ w 0*%$ରԠ 0"VUIϑϩʔରԠ͍ͯ͠ͳ͍ w ΞϓϦ41"ʹద͍ͯ͠Δ͕ඪ४తͳ8FCΞϓϦͷೝূʹ͑ͳ͍ 14 'JSFCBTF"VUIFOUJDBUJPO
w ಛ w ։ൃͷख͕ؒ࠷খݶʹͳΔΑ͏ʹ4%,͕๛ʹఏڙ͞Ε͍ͯΔ w ෳαʔϏεల։ͰͷγϯάϧαΠϯΦϯͷఏڙ w ۚ༥ɾϔϧεέΞྖҬͷೝূʹରԠՄೳ w ʹPLUBʹങऩ͞ΕPLUBͷαʔϏε
$VTUPNFS*EFOUJUZ$MPVE ͱͯ͠ ఏڙ 15 "VUI
w 41"ΞϓϦଆ4%,ΛΈࠐΉ͚ͩͰೝূ࣮͕ऴΘΔʹ!BVUIBVUIBOHVMBS w 6OJWFSTBM-PHJOͱ͍͏ϩάΠϯը໘͕ఏڙ͞ΕΔͨΊ w ؆୯ͳϚΠΫϩαʔϏεతͳ"1*Λͭͬͯ͘ೝূΛߟ͑ͳͯ͘ࡁΉ w .1"ͳΞϓϦέʔγϣϯͰ͋Εɺ"84ͷ"QQMJDBUJPO-PBE#BMBODFSͷೝূʹܨ͙͚ͩͰ࣮ݱͰ͖Δ w ཧը໘ͳͲकΓ͍ͨͱ͜Ζʹ༗ޮ
w ΞϓϦέʔγϣϯʹΈࠐΈͭͭ"-#ͰࣄલೝূΛֻ͚͓ͯ͘ͱ͞ΒʹηΩϡΞʹ w "DUJPOTͰ/PEFKTʹΑΔ"VUIͷೝূڍಈΛ֦ு͢Δ͜ͱՄೳ w ྫ͑*1੍ݶͳͲΛ"DUJPOTͰ࣮Ͱ͖Δ 16 "VUIͷศརͳͱ͜Ζ
17 ๛ͳೝূखஈʹରԠͰ͖Δ ιʔγϟϧϩάΠϯ Google / Apple / LINEͳͲ ΤϯλʔϓϥΠζϩάΠϯ Okta
/ HENGE / Google Workspaces Azure AD / SAML ύεϫʔυϨεϩάΠϯ ϝʔϧϦϯΫ / SMSϫϯλΠϜ / WebAuthn ϝʔϧΞυϨε/PWҎ֎ͷೝূखஈΛΞϓϦέʔγϣϯଆͰߟ͑Δඞཁ͕ͳ͘ͳΔɻ Auth0Ͱઃఆ͢Δ͚ͩ
18 αʔϏεΞʔΩςΫνϟͷྫ ސ٬ ϙʔλϧ αΠτ αʔϏε A αʔϏε B ڞ௨ೝূج൫
ϑϧεΫϥον ϑϧεΫϥον OAuth OAuth SAML w ҟछγεςϜಉ࢜ͷ࿈ܞ w 4".-0"VUI w "VUIͰͷ$PPLJFηογϣϯʹΑ ΓγϯάϧαΠϯΦϯΛ࣮ݱ w αʔϏε͝ͱʹೝূΛٻΊΒΕͳ ͍
w "VUIͷΞΧϯτΛ࡞͠ɺ"QQMJDBUJPOΛ࡞ 19 "OHVMBSʹ"VUIΛಋೖ͢Δखॱ
20 "OHVMBSͷಋೖνϡʔτϦΞϧ
w OQNJOTUBMM!BVUIBVUIBOHVMBS 21 "OHVMBSͰͷηοτΞοϓ
22 ϩάΠϯϘλϯͷ࣮
w "1*ʹΞΫηετʔΫϯΛૹΔʹʁ 23 "1*ͷೝূ w *OUFSDFQUPS͕ଂ͞Ε͍ͯΔͷͰɺ .PEVMFʹઃఆΛ༩͑Δ͚ͩͰΞΫηε τʔΫϯ͕"VUIPSJ[BUJPOϔομʹࣗಈͰ ༩͞Ε·͢ɻ
w ඍົͳͱ͜ΖΛృΓସ͑ͳ͕Β࡞͍ͬͯΔಠࣗೝূͷ࣮͕ϓϩμΫτ͝ͱʹҟͳΔ w ˠͯ͢"VUIͷ࣮ʹू͞Εͨ w &OUFSQSJTFܖΛక݁͠·ͨ͠ w ࠷ऴతʹ͍ΖΜͳೝূखஈͷରԠϢʔβن͕૿Ճͨͨ͠Ί w શϓϩμΫτͷॏཁͳՕॴΛकΔηΩϡϦςΟࢿͱͯ͠
24 ࣾͰಋೖͯ͠Έͯ
w αʔϏεಛੑʹԠͨ͡ඞཁͳೝূج൫Λબ͠·͠ΐ͏ w ෳͷ##αʔϏεల։ʹ"VUIΛ࠾༻͢Δͱ։ൃ͕ϋοϐʔʹͳͬͨ w 4%,͕ରԠ͍ͯ͠ΔݴޠɾϑϨʔϜϫʔΫͰಋೖ͕؆୯ w ҟछγεςϜͰ0*%$4".-ରԠ͍ͯ͠ΔγεςϜͱͷ݁߹༰қ 25 ·ͱΊ