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
Drupal×Auth0 開発レスでセキュアなID管理を試してみた! / 20200214
Search
アクイアジャパン Acquia Japan
February 14, 2020
Programming
0
370
Drupal×Auth0 開発レスでセキュアなID管理を試してみた! / 20200214
https://drupal-meetup-haneda.connpass.com/event/162496/
アクイアジャパン Acquia Japan
February 14, 2020
Tweet
Share
More Decks by アクイアジャパン Acquia Japan
See All by アクイアジャパン Acquia Japan
Auth0 by OktaとDrupalで実践!認証付きアプリケーションの新しいアプローチ
acquiajp
0
190
Drupal 10.3の新機能紹介ウェビナー
acquiajp
0
240
DrupalCon Portland 2024 総まとめウェビナー
acquiajp
0
93
開発者必見!Acquia Cloud IDEで最高のDrupal開発を始めよう
acquiajp
0
170
触って学ぶ!デジタルアセット管理 Acquia DAM ハンズオンウェビナー
acquiajp
0
36
DrupalCon Lille 2023 総まとめウェビナー
acquiajp
0
64
コンテンツ設計手法で変更に強いアプリケーションを実現する〜ローコードによるWebアプリのバックエンド実装 #CNDF2023
acquiajp
0
380
DrupalCon Pittsburgh 2023 総まとめウェビナー
acquiajp
0
91
Acquia製品概要&Site Studioデモのご紹介
acquiajp
0
110
Other Decks in Programming
See All in Programming
AI Schema Enrichment for your Oracle AI Database
thatjeffsmith
0
250
AIによるイベントストーミング図からのコード生成 / AI-powered code generation from Event Storming diagrams
nrslib
2
1.8k
インターン生でもAuth0で認証基盤刷新が出来るのか
taku271
0
190
AI前提で考えるiOSアプリのモダナイズ設計
yuukiw00w
0
220
LLM Observabilityによる 対話型音声AIアプリケーションの安定運用
gekko0114
2
420
AIエージェント、”どう作るか”で差は出るか? / AI Agents: Does the "How" Make a Difference?
rkaga
4
2k
Apache Iceberg V3 and migration to V3
tomtanaka
0
150
React 19でつくる「気持ちいいUI」- 楽観的UIのすすめ
himorishige
11
5.9k
例外処理とどう使い分ける?Result型を使ったエラー設計 #burikaigi
kajitack
16
6k
Smart Handoff/Pickup ガイド - Claude Code セッション管理
yukiigarashi
0
130
OSSとなったswift-buildで Xcodeのビルドを差し替えられるため 自分でXcodeを直せる時代になっている ダイアモンド問題編
yimajo
3
610
カスタマーサクセス業務を変革したヘルススコアの実現と学び
_hummer0724
0
630
Featured
See All Featured
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
730
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
400
ラッコキーワード サービス紹介資料
rakko
1
2.2M
Are puppies a ranking factor?
jonoalderson
1
2.7k
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.1k
Being A Developer After 40
akosma
91
590k
Documentation Writing (for coders)
carmenintech
77
5.2k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
100
BBQ
matthewcrist
89
10k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.9k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
230
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
1
1.4k
Transcript
Drupal×Auth0 ։ൃϨεͰηΩϡΞͳ IDཧΛࢼͯ͠Έͨʂ ؙࢁ ͻ͔Δ
ؙࢁͻ͔Δ • ಠཱܥιϑτΣΞ։ൃձࣾͰ ιϑτΣΞΤϯδχΞ ͷͪΤόϯδΣϦετͱͯ͠ ϓϩμΫτͷܒ׆ಈ • 20198݄ ΞΫΠΞʹδϣΠϯ Developer
Relations ୲ • Drupalྺɿ20198݄ʙ Ruby / Rails / Web API / Docker / AWS ϥʔϝϯ / εΠʔπ / Ωϟϯϓ൧ / ొࢁ ࣗݾհ
ԿͬͯΔͷʁ • Drupalೝఆࢼݧͷຊޠ൛ͷϩʔϯν ◦ ࡢ11݄ʮΞΫΠΞೝఆαΠτϏϧμʔ – Drupal 8ʯެ։ ◦ ͋ͱ3ͭͷࢼݧΛ3݄·Ͱʹެ։༧ఆ
• ೝఆऀΠϯλϏϡʔهࣄॻ͍ͯ·͢ • DrupalϋϯζΦϯ ◦ ఆظతʹ։࠵ ࣄͷ
× ೝূ ೝՄ
ඪ४ػೳʹࡌ • Ϣʔβʔ࡞ • ϩάΠϯɺϩάΞτ • Ϣʔβʔཧ • ݖݶཧ •
...etc DrupalͷIDཧ
• ৽نϢʔβʔͷ֫ಘ ◦ ձһొ࣌ͷͷܰݮ ◦ ஈ֊తͳใೖྗ • طଘϢʔβʔͷLTV ◦ طଘϢʔβʔͷ࠶๚
◦ ϢʔβϏϦςΟͷ্ έʔε1 : BtoC͚EίϚʔε
• ৽نϢʔβʔͷ֫ಘ ◦ ձһొ࣌ͷͷܰݮ ◦ ஈ֊తͳใೖྗ • طଘϢʔβʔͷLTV ◦ طଘϢʔβʔͷ࠶๚
◦ ϢʔβϏϦςΟͷ্ έʔε1 : BtoC͚EίϚʔε ιʔγϟϧϩάΠϯ
• SaaSɺΫϥυαʔϏεͷ૿Ճ • IDύεϫʔυͷཧ͕ࡶ • ηΩϡϦςΟϦεΫ έʔε2 : BtoB͚ετϨʔδαʔϏε
• SaaSɺΫϥυαʔϏεͷ૿Ճ • IDύεϫʔυͷཧ͕ࡶ • ηΩϡϦςΟϦεΫ έʔε2 : BtoB͚ετϨʔδαʔϏε SSOʢγϯάϧαΠϯΦϯʣ
• SSO • ιʔγϟϧϩάΠϯ • ଞཁૉೝূʢMFAʣ • ϩʔϧϕʔεΞΫηε੍ޚʢRBACʣ • ύεϫʔυϨε
• ෆਖ਼ΞΫηεݕ • ϩάੳ • ...etc ΄͔ʹ͍Ζ͍ΖೝূɾೝՄ DrupalͰ Ͳ͏ରԠ͢Δʁ
ೝূɾೝՄϓϥοτϑΥʔϜ Amazon Cognito
×
ೝূɾೝՄϓϥοτϑΥʔϜ Auth0
ೝূɾೝՄϓϥοτϑΥʔϜ Auth0 ແྉͰ৭ʑͰ͖Δ
ೝূɾೝՄϓϥοτϑΥʔϜ Auth0 ެࣜϞδϡʔϧ ͋ͬͨʂ
× ࢼͯ͠Έͨʂ
# 1. Composerܦ༝ͰDrupalΠϯετʔϧ $ composer create-project drupal/recommended-project drupal-and-auth0 $ cd
drupal-and-auth0 # 2. Auth0ϞδϡʔϧΛΠϯετʔϧ $ composer require drupal/auth0 ϞδϡʔϧΛΠϯετʔϧ
Auth0ʹαΠϯΠϯ • Auth0ʹαΠϯΠϯ ◦ auth0.com • ແྉɺΫϨδοτΧʔυͷొͳ͠Ͱ ར༻Մೳ
ΞϓϦέʔγϣϯ࡞
ΞϓϦέʔγϣϯ࡞ • SettingsͰ৭ʑઃఆ͢Δ ◦ Allowed Callback URLs : http://localhost:5656/auth0/ callback
◦ Allowed Web Origins : http://localhost:5656 ◦ Allowed Logout URLs : http://localhost:5656 ◦ Allowed Origins (CORS) : http://localhost:5656
Drupalଆͷઃఆ • Auth0ͷઃఆը໘Ͱ৭ʑઃఆ ◦ υϝΠϯ ◦ Client ID ◦ Client
Secret ◦ JsonWebToken Signature Algorithm
1 2 ͳͥDrupalͳͷ͔ʁ 3 DrupalʹϞδϡʔϧΛ Πϯετʔϧ Auth0ΞΧϯτ࡞ͱ ΞϓϦέʔγϣϯઃఆ DrupalଆͷAuth0ઃఆ 3εςοϓͰઃఆྃʂ
ͳͥDrupalͳͷ͔ʁ ࢼͯ͠ΈΔͦͷ1 : αΠϯΞοϓ
ͳͥDrupalͳͷ͔ʁ ࢼͯ͠ΈΔͦͷ1 : αΠϯΞοϓ αΠϯΞοϓ Ͱ͖ͨʂ
ͳͥDrupalͳͷ͔ʁ ࢼͯ͠ΈΔͦͷ1 : αΠϯΞοϓ Auth0ͷཧը໘ͰϢʔβʔใ͕ΈΕΔ
ͳͥDrupalͳͷ͔ʁ ࢼͯ͠ΈΔͦͷ2 : DrupalʹొࡁΈͷΞΧϯτͰϩάΠϯ
ͳͥDrupalͳͷ͔ʁ ࢼͯ͠ΈΔͦͷ2 : DrupalʹొࡁΈͷΞΧϯτͰϩάΠϯ ϩάΠϯͰ͖ͨʂ
ͳͥDrupalͳͷ͔ʁ ࢼͯ͠ΈΔͦͷ3 : ϩάΞτ
ͳͥDrupalͳͷ͔ʁ ࢼͯ͠ΈΔͦͷ2 : DrupalʹొࡁΈͷΞΧϯτͰϩάΠϯ ϩάΞτ Ͱ͖ͨʂ
ͳͥDrupalͳͷ͔ʁ ·ͱΊ • ֎෦ͷೝূೝՄϓϥοτϑΥʔϜΛͬͯ Drupalʹ։ൃϨεͰηΩϡΞͳIDཧΛ࣮ݱ • ࠓճࢼͯ͠ΈͨखॱQiitaͰެ։ ◦ https://qiita.com/hmaruyama/items/69abaddf8e4d95793a8f
None