Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
5minutes_learning_OAuth
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
maimu
March 25, 2023
Programming
370
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
5minutes_learning_OAuth
maimu
March 25, 2023
More Decks by maimu
See All by maimu
Gentoo 1年生 ビルドは終わらない
maimux2x
0
110
Rails 1.0 のコードで学ぶ find_by* と method_missing の仕組み / Learn how find_by_* and method_missing work in Rails 1.0 code
maimux2x
1
1.5k
rails_girls_is_my_gate_to_join_the_ruby_commuinty
maimux2x
0
730
ruby-flip-flop
maimux2x
0
170
before_rails_girls_after_rails_girls
maimux2x
0
900
my_study_of_ruby_method
maimux2x
1
220
one_liner_fizzbuzz
maimux2x
0
190
about_rails_girls_document_translation
maimux2x
0
6.4k
best_for_fbc
maimux2x
0
93
Other Decks in Programming
See All in Programming
Vue.jsで作る空間解析アプリとCapacitorプラグインのData Bridge
hal_spidernight
1
160
React Native에 현대적인 빌드 도구 더하기: Rollipop 구현기
leegeunhyeok
0
180
まずはコードより業務と向き合う:テーブル解体のためにPdMを呼んだ話
sakawe_ee
0
150
全ての永続トークンを、生まれる前に消し去りたい!
sylph01
3
1.7k
AI時代のシニアエンジニアとは
yosuke_furukawa
PRO
14
11k
Snowflake Openflow Connector利用の勘所 / 20261024developersio2026tokyo-snowflake-openflow
kasacchiful
PRO
0
300
Crash Auto Pipelines
veronikapj
1
360
AWS CDKを理解するために公式の定義を深掘って解説してみる / Understanding AWS CDK by Digging into Its Official Definition
akihisaikeda
2
260
Spec-driven Development with AI
simas
PRO
0
2.2k
プロジェクトコードをキレイキレイしよう!暗黙的な参照を読み解く静的解析
ostk0069
0
200
[DroidKnights 2026] Workflow AX: From Auto-Documented Policies to E2E Testing
raeminkang
0
520
Web3Dライブラリを作ってVue Custom Rendererの仕組みを理解しよう / lets learn vue custom renderer by making 3d library
drumath2237
1
120
Featured
See All Featured
Visualization
eitanlees
153
17k
Why Our Code Smells
bkeepers
PRO
340
58k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
560
Navigating Team Friction
lara
192
16k
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
670
Paper Plane
katiecoart
PRO
5
55k
Google's AI Overviews - The New Search
badams
0
1.7k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
3.1k
Crafting Experiences
bethany
1
420
GraphQLとの向き合い方2022年版
quramy
50
15k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
2
6.4k
Transcript
5分で学ぶ OAuth2.0 Entaku.rb 2023-03-24 maimu
自己紹介 名前:まいむ GitHub:https://github.com/maimux2x Twitter:https://twitter.com/maimux2x 仕事でプロダクトマネジメントを担当する中で自分自身もサービス開発をしたいと思うよ うになりFjordBootCampでプログラマーを目指して学習中。 餡子もカスタードも大好きな甘党です!
LTテーマ 5分で学ぶOAuth2.0
テーマ選定理由 FjordBootCampの卒業課題でGoogleカレンダーAPIを利用したサービスを開発したい と考えていて、認可の仕組みを理解したかった
OAuth2.0とは? サードパーティアプリケーションによるHTTPサービスへの限定的な アクセスを可能にする認可フレームワーク
どゆこと?
具体例 ユーザー サードパーティアプリ (PDF編集アプリ等) HTTPサービス (Google OAuth ) HTTPサービス (Googleドライブ)
GoogleドライブからPDFのダウン ロードだけが許可される GoogleドライブにあるPDFデータ を加工して上書きしたい ユーザーの同意を得 てPDF編集アプリにド ライブ内のPDFダウ ンロードを許可
つまり OAuth2.0は「PDF編集アプリによるGoogleドライブへの限定的なアクセス」を可能にす るための仕組み
ポイント:限定的なアクセス PDF編集アプリはGoogleドライブから「PDFデータのダウンロード」 しか許可されていない 万が一悪意あるアプリだったとしてもダウンロードしかできないため 影響は最低限に抑えられる では、どうやって限定的なアクセスを実現しているのか?
OAuth2.0の仕組み リソースオーナー クライアント 認可サーバー リソースサーバー ①認可サーバーにリソースへのア クセス権を要求 ②リソースオーナーへ の意思を確認 ③アクセス権の委譲を
同意 ④クライアントに対し てアクセストークンを 発行
ポイント:アクセストークン • 誰のどのリソースにどのような操作を行うことが許可されているか ◦ 読み取り・書き込みなどの権限をスコープという仕組みで管理している • 有効期限 ◦ 期限を過ぎたアクセストークンでリクエストするとリソースサーバーは権限委譲を拒否する 認可サーバーがアクセストークンを発行し、クライアントがそのトークンを用いて操作のリ
クエストをすることで、許可された操作のみが実行可能になる。
まとめ • OAuth2.0は「サードパーティアプリによるリソースへの限定的なアクセス」を可能に するための「アクセストークン発行方法のルール」 • サードパーティアプリとリソースオーナーの間で、権限委譲の確認を行い、事前に 決められた権限のスコープに則ったアクセストークンを発行し、サードパーティアプ リに限定的な操作を許可している
参考資料 • 雰囲気でOAuth2.0を使っているエンジニアがOAuth2.0を整理して、手を動かしな がら学べる本(Auth屋 著)
ご清聴ありがとうございました