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
680
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
2分台で1500examples完走!爆速CIを支える環境構築術 - Kaigi on Rails 2025
falcon8823
3
5.1k
Railsアプリケーションと パフォーマンスチューニング ー 秒間5万リクエストの モバイルオーダーシステムを支える事例 ー Rubyセミナー 大阪
falcon8823
7
2k
推し活を支えるAngularアプリ 量産体制
falcon8823
0
88
推し活の ハイトラフィックに立ち向かう Railsとアーキテクチャ - Kaigi on Rails 2024
falcon8823
8
7.2k
Angular Schematicsを利用した アプリ量産体制
falcon8823
0
240
iOSとIonicとHEIF画像
falcon8823
0
380
Ionicアプリのビルド自動化
falcon8823
0
40
Firebase Authentication - Ionic Meetup #12 Tokyo
falcon8823
0
310
IonicアプリをAuth0で認証する - Ionic Meetup #16 in Online
falcon8823
0
450
Other Decks in Programming
See All in Programming
AIエンジニアリングのご紹介 / Introduction to AI Engineering
rkaga
8
3.4k
Kotlin Multiplatform Meetup - Compose Multiplatform 외부 의존성 아키텍처 설계부터 운영까지
wisemuji
0
130
ゆくKotlin くるRust
exoego
1
160
組み合わせ爆発にのまれない - 責務分割 x テスト
halhorn
1
160
Combinatorial Interview Problems with Backtracking Solutions - From Imperative Procedural Programming to Declarative Functional Programming - Part 2
philipschwarz
PRO
0
120
Graviton と Nitro と私
maroon1st
0
140
AI前提で考えるiOSアプリのモダナイズ設計
yuukiw00w
0
190
Java 25, Nuevas características
czelabueno
0
120
PostgreSQLで手軽にDuckDBを使う!DuckDB&pg_duckdb入門/osc25hi-duckdb
takahashiikki
0
190
これならできる!個人開発のすゝめ
tinykitten
PRO
0
130
Flutter On-device AI로 완성하는 오프라인 앱, 박제창 @DevFest INCHEON 2025
itsmedreamwalker
1
160
DevFest Android in Korea 2025 - 개발자 커뮤니티를 통해 얻는 가치
wisemuji
0
170
Featured
See All Featured
New Earth Scene 8
popppiees
0
1.2k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
How to build a perfect <img>
jonoalderson
0
4.8k
From π to Pie charts
rasagy
0
92
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Ruling the World: When Life Gets Gamed
codingconduct
0
100
Technical Leadership for Architectural Decision Making
baasie
0
190
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
61
44k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
Building AI with AI
inesmontani
PRO
1
580
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
0
46
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 ·ͱΊ