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
380
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Drupal×Auth0 開発レスでセキュアなID管理を試してみた! / 20200214
https://drupal-meetup-haneda.connpass.com/event/162496/
アクイアジャパン Acquia Japan
February 14, 2020
More Decks by アクイアジャパン Acquia Japan
See All by アクイアジャパン Acquia Japan
Auth0 by OktaとDrupalで実践!認証付きアプリケーションの新しいアプローチ
acquiajp
0
230
Drupal 10.3の新機能紹介ウェビナー
acquiajp
0
270
DrupalCon Portland 2024 総まとめウェビナー
acquiajp
0
130
開発者必見!Acquia Cloud IDEで最高のDrupal開発を始めよう
acquiajp
0
230
触って学ぶ!デジタルアセット管理 Acquia DAM ハンズオンウェビナー
acquiajp
0
56
DrupalCon Lille 2023 総まとめウェビナー
acquiajp
0
100
コンテンツ設計手法で変更に強いアプリケーションを実現する〜ローコードによるWebアプリのバックエンド実装 #CNDF2023
acquiajp
0
410
DrupalCon Pittsburgh 2023 総まとめウェビナー
acquiajp
0
110
Acquia製品概要&Site Studioデモのご紹介
acquiajp
0
140
Other Decks in Programming
See All in Programming
PHP に部分適用が来るぞ!……ところで何それ?おいしいの? #phpcon / phpcon-2026
shogogg
0
640
freee が目指す データ マネジメント戦略 AI-Ready 時代を支える 攻めのガバナンスとは
freee
PRO
0
360
「寝てても仕事が進む」Claude Codeで組む第二の脳
tomoyafujita2016
0
330
S3 を使うアプリケーションをローカル完結で動かすことに全力を注いでみた / Running S3 Apps Offline
contour_gara
0
460
5分で問診!Composer セキュリティ健康診断
codmoninc
0
980
ITヒヤリハットを整理してみた ~ライフサイクルと原因から考える再発防止策~
koukimiura
1
140
AIが無かった頃の素敵な出会いの話
codmoninc
1
420
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
570
生成AI導入の「期待外れ」を乗り越える ー 開発フロー改革が目指す、真の組織変革
starfish719
0
4.3k
仕様駆動開発の消費期限
watany
20
8.2k
the container ship “Apple Silicon”@WWDC26 Recap -Japan-\(region).swift
shingangan
0
120
【やさしく解説 設計編・中級 #4】ルールの寿命と、システムの年輪
panda728
PRO
2
180
Featured
See All Featured
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.7k
Discover your Explorer Soul
emna__ayadi
2
1.3k
Amusing Abliteration
ianozsvald
1
240
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
6.1k
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
790
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
Evolving SEO for Evolving Search Engines
ryanjones
0
250
Game over? The fight for quality and originality in the time of robots
wayneb77
1
240
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
480
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.4k
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
380
[SF Ruby Conf 2025] Rails X
palkan
2
1.3k
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