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
390
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
Angular Schematicsを利用した アプリ量産体制
falcon8823
0
77
iOSとIonicとHEIF画像
falcon8823
0
300
Ionicアプリのビルド自動化
falcon8823
0
16
Firebase Authentication - Ionic Meetup #12 Tokyo
falcon8823
0
240
IonicアプリをAuth0で認証する - Ionic Meetup #16 in Online
falcon8823
0
360
Other Decks in Programming
See All in Programming
初めてのiOS関連GitHub ActionsをMarketplaceに公開するまでの実録
konifar
3
200
詳解UIWindow
natmark
3
2.1k
暴走のウホーレン 〜想いってのはvimrcにしないと伝わらないんだぜ〜 / iosdc_japan_2024
uhooi
1
240
Ebitengineの1vs1ゲーム WebRTCの活用
ponyo877
0
350
connect-go で面倒くささと戦う / 2024-08-27 #newmo_layerx_go
izumin5210
2
610
プログラマのための音楽入門
cheebow
5
550
Mergeable Libraryで 高速なアプリ起動を実現しよう!
giginet
PRO
1
2k
どうしてこうなった?から理解するActive Recordの関連の裏側
willnet
5
530
オートマトン学習しろ / Do automata learning
makenowjust
3
110
GoのIteratorに詳しくなってしまう
inatonix
1
180
月間4.5億回再生を超える大規模サービス TVer iOSアプリのリアーキテクチャ戦略 - iOSDC2024
techtver
PRO
1
620
開発を加速する共有Swift Package実践
elmetal
PRO
0
320
Featured
See All Featured
Building Better People: How to give real-time feedback that sticks.
wjessup
359
18k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
248
20k
Stop Working from a Prison Cell
hatefulcrawdad
266
20k
Creatively Recalculating Your Daily Design Routine
revolveconf
215
12k
WebSockets: Embracing the real-time Web
robhawkes
59
7.3k
A Tale of Four Properties
chriscoyier
155
22k
The Art of Programming - Codeland 2020
erikaheidi
48
13k
[RailsConf 2023] Rails as a piece of cake
palkan
44
4.6k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
25
1.3k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
225
22k
A Philosophy of Restraint
colly
202
16k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
230
17k
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 ·ͱΊ