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
認証認可
Search
yosi
August 09, 2022
Programming
1
130
認証認可
yosi
August 09, 2022
Tweet
Share
More Decks by yosi
See All by yosi
自社開発のエンジニアの私が 大事にしてること(n=1)
yoshisan
1
54
なるほどGit講座 (追跡ブランチが理解できます!)
yoshisan
0
180
「自分の時間を生きる」キャリア論
yoshisan
1
98
小学生でもわかる SlackAPI×GAS
yoshisan
0
110
達人プログラマーになろう!
yoshisan
0
110
オブジェクト指向が"チョットワカル"スライド
yoshisan
0
110
Linuxについて"ほんのチョットワカル"スライド
yoshisan
1
110
Let's React!! "チョットワカル"の第一歩
yoshisan
1
190
ようこそ!!ココカラ勉強会へ!
yoshisan
0
130
Other Decks in Programming
See All in Programming
VS Code Update for GitHub Copilot
74th
2
670
技術同人誌をMCP Serverにしてみた
74th
1
680
Rubyでやりたい駆動開発 / Ruby driven development
chobishiba
1
760
Rails Frontend Evolution: It Was a Setup All Along
skryukov
0
260
AI コーディングエージェントの時代へ:JetBrains が描く開発の未来
masaruhr
1
200
可変変数との向き合い方 $$変数名が踊り出す$$ / php conference Variable variables
gunji
0
140
#QiitaBash MCPのセキュリティ
ryosukedtomita
1
1.5k
ふつうの技術スタックでアート作品を作ってみる
akira888
1
1.2k
Startups on Rails in Past, Present and Future–Irina Nazarova, RailsConf 2025
irinanazarova
0
220
「テストは愚直&&網羅的に書くほどよい」という誤解 / Test Smarter, Not Harder
munetoshi
0
190
#kanrk08 / 公開版 PicoRubyとマイコンでの自作トレーニング計測装置を用いたワークアウトの理想と現実
bash0c7
1
920
Google Agent Development Kit でLINE Botを作ってみた
ymd65536
2
260
Featured
See All Featured
Become a Pro
speakerdeck
PRO
29
5.4k
A better future with KSS
kneath
238
17k
Code Review Best Practice
trishagee
69
19k
BBQ
matthewcrist
89
9.7k
Building a Modern Day E-commerce SEO Strategy
aleyda
42
7.4k
Git: the NoSQL Database
bkeepers
PRO
430
65k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
A designer walks into a library…
pauljervisheath
207
24k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
Embracing the Ebb and Flow
colly
86
4.8k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.9k
Writing Fast Ruby
sferik
628
62k
Transcript
ೝূɾೝՄ 2021/7/2(ۚ)ɹদాయ
ࠓճ࣮ࡍʹௐͯΈͯ,,, • ·ͣɺೝূೝՄͷԞ͕ਂ͍ʂʂʂ • ௐ͍ͯ͘͏ͪʹOAuthOpenID ConnectͳͲ৭ʑग़ͯ͘Δ • ೝূೝՄʁϩάΠϯͷ͜ͱΖʁ,,
ೝূͱೝՄʹ͍ͭͯ ೝূɹ(Authentication) • ௨৴ͷ૬ख͕୭(Կ)Ͱ͋Δ͜ͱ͔Λ֬ೝ͢Δ͜ͱ • Γࡁ·͠Ͱͳ͍͜ͱΛ֬ೝ͢Δ͜ͱ ೝՄɹ(Authorization) • ಛఆͷ݅ʹରͯ͠ɺϦιʔεΞΫηεݖݶΛ༩͑Δ͜ͱ
→ ݖݶΛ༩͑Δ͜ͱ
ೝূͱೝՄ HTTP statusͷ ೝূɹ(Authentication) • 401 Unauthorized —ɹೝূͷࣦഊ • ʮ͓·͑୭ͩΑʯ
ݴ༿ࣅͯΔ͚Ͳผͷ֓೦! ೝՄɹ(Authorization) • 403 Forbidden — ೝՄͷෆ • ʮཧղͨ͠ɺ͕ͩஅΔʯ
ೝূͷ ೝূɹ(Authentication) • ௨৴૬खͷID(ଐੑ)ΛͳΓ͢·͠Ͱͳ͍͜ͱΛ֬৴͢Δ͜ͱ ೝূཁૉ ݱ࣮ͷੈք ిࢠͷੈք ͋ͳͨͩΕʁ إɺɺॺ໊ච ੜମೝূ(ࢦɺೝূ)
ԿΛͬͯΔͷʁ ҹؑɺূ໌ॻɺΧʔυ ɹܞଳి,ిࢠূ໌ॻ, ηΩϡϦςΟʔτʔΫϯ ͋ͳͨͩΕʁ ߹ݴ༿ ύεϫʔυ
伴(key) ৣ(lock)
ೝՄ ͷ ೝՄɹ(Authorization) • ୭͔ʹ 伴Λ͢͜ͱɻ • ྫ͑ं݊ • ූΛ࣋ͬͯೖΕɺిंʹΕΔɻͳ͚ΕΕͳ͍ɻ
• ೝՄʹݩ֬ೝඞਢͰͳ͍ 伴ූ͔Βʮ୭͔ʯΘ͔Βͳ͍
1.Ϣʔβʔʹʮ伴(key)ʯΛ༩͑Δɻ 2.Ϧιʔεʹʮৣ(lock)ʯΛ͔͚Δɻ 3.ΞΫηε࣌ʹ伴Λͬͯղৣ͢Δɻ ϙϦγʔఆٛ ϙϦγʔࢪߦ
ΞΫηετʔΫϯ ɾೝূࡁΈϢʔβʔΛࣝผ͢ΔͨΊͷจࣈྻɻ ɾτʔΫϯɾɾɾʮূڌʯʮ͠Δ͠ʯʮʯ
ೝূͱೝՄ ͷີ݁߹ͷ ೝূɹ(Authentication)ɹͱɹೝՄɹ(Authorization) ɾ૬खA͞Μͩʂ ͔ͩΒΞΫηεڐՄ ɾ૬खA͞ΜͰͳ͍! ΞΫηεڐՄ͞Εͳ͍ ɾΞΫηε͕ڐՄ͞Εͨɺͭ·ΓA͞Μ(!?) ɾΞΫηε͕ڐՄ͞Εͳ͔ͬͨɺͭ·ΓA͞ΜͰͳ͍
→͜ͷ༷ʹೝূͱೝՄͷɺٯɾཪɾରۮ͕ग़ͯ͘Δɻ
ೝূͱೝՄ ͷ • ೝূʹجͮ͘ೝՄ ͜Ε͕ଟ͘ͷਓ͕ߟ͑Δύλʔϯɻ ྫʣӡస໔ڐॻͳͲ͕͍͍ྫɻ •
ೝՄʹجͮ͘ೝূ(!?) ྫ) ͜ͷਓA͞ΜͷՈͷ伴Λ࣋ͬͯΔ͔ΒɺA͞ΜͩͶ →͜Εͷߟ͕͑OAuthೝূͷߟ͑ʹͭͳ͕Δɻ