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
360
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
170
Drupal 10.3の新機能紹介ウェビナー
acquiajp
0
220
DrupalCon Portland 2024 総まとめウェビナー
acquiajp
0
85
開発者必見!Acquia Cloud IDEで最高のDrupal開発を始めよう
acquiajp
0
150
触って学ぶ!デジタルアセット管理 Acquia DAM ハンズオンウェビナー
acquiajp
0
30
DrupalCon Lille 2023 総まとめウェビナー
acquiajp
0
56
コンテンツ設計手法で変更に強いアプリケーションを実現する〜ローコードによるWebアプリのバックエンド実装 #CNDF2023
acquiajp
0
360
DrupalCon Pittsburgh 2023 総まとめウェビナー
acquiajp
0
86
Acquia製品概要&Site Studioデモのご紹介
acquiajp
0
100
Other Decks in Programming
See All in Programming
組込みだけじゃない!TinyGo で始める無料クラウド開発入門
otakakot
1
300
理論と実務のギャップを超える
eycjur
0
140
Introduce Hono CLI
yusukebe
6
2.7k
実践Claude Code:20の失敗から学ぶAIペアプログラミング
takedatakashi
15
5k
コードとあなたと私の距離 / The Distance Between Code, You, and I
hiro_y
0
170
Devoxx BE - Local Development in the AI Era
kdubois
0
130
テーブル定義書の構造化抽出して、生成AIでDWH分析を試してみた / devio2025tokyo
kasacchiful
0
140
One Enishi After Another
snoozer05
PRO
0
110
AI Agent 時代的開發者生存指南
eddie
3
1.8k
「ちょっと古いから」って避けてた技術書、今だからこそ読もう
mottyzzz
11
6.8k
Six and a half ridiculous things to do with Quarkus
hollycummins
0
180
オープンソースソフトウェアへの解像度🔬
utam0k
16
3k
Featured
See All Featured
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.5k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
53k
Building an army of robots
kneath
306
46k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
140
34k
A Modern Web Designer's Workflow
chriscoyier
697
190k
Side Projects
sachag
455
43k
Designing for Performance
lara
610
69k
Why Our Code Smells
bkeepers
PRO
340
57k
Producing Creativity
orderedlist
PRO
347
40k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
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