Upload
eiji-kitamura
View
1.798
Download
0
Embed Size (px)
Citation preview
OAuth by agektmr
1
女優 坂井真紀さん 曰く
2
自主規制
自己紹介 • 北村英志(id:agektmr) • Tender Surrender(devlog.agektmr.com) • SocialWeb Japan主催 • Google API Expert (OpenSocial / Buzz) • NTTレゾナント所属 (goo)
3
マッシュアップ • APIを用いて集めた公開情報を組み合わせ、新しいサービスを作り上げる ‒ 地図 ‒ 公開された写真 ‒ etc.
4
地図マッシュアップの例
5
認証を要するマッシュアップ • APIを用いて集めたユーザーに紐づく非公開情報を組み合わせ、新しいサービスを作り上げる ‒ アドレス帳 ‒ 非公開の写真 ‒ etc.
6
Twitterマッシュアップの例
7
セキュリティリスク を含むマッシュアップ
8
• リソースオーナーがクライアントに直接クレデンシャル(認可情報)を渡すリスク ‒ 信頼できないクライアント ‒ クライアントの脆弱性による情報漏えい ‒ etc.
リソースオーナー (ユーザー)
クライアント (コンシューマ)
サーバー (サービスプロバイダ)
セキュリティリスク を含むマッシュアップの例
9
そこでOAuth
10
OAuthとは • 認可を必要とするリソースを、クレデンシャルをクライアントに渡すことなくマッシュアップするためのプロトコル
11
Twitterでの利用例(1/3)
12
Twitterでの利用例(2/3)
13
Twitterでの利用例(3/3)
14
OAuthフロー
15
テンポラリクレデンシャル取得 (リクエストトークン/シークレット)
トークンクレデンシャル取得 (アクセストークン/シークレット)
保護されたリソースを取得
ログイン/認可を承認
未認可アクセス
認可済みアクセス
クライアントクレデンシャル (コンシューマキー/シークレット)
Twitter以外の利用例 • OpenSocial(mixi, MySpace, etc.) • Google • Yahoo! Japan • Facebook
16
OAuthの拡張
17
OpenID/OAuth Hybrid
18
OAuth Proxy
19
OAuth Consumer Request
20
データ取得
クライアントクレデンシャル
アクセス
xAuth(Twitter)
21
トークンクレデンシャル取得
クライアントクレデンシャル ユーザークレデンシャル (ID/パスワード)
保護されたリソースを取得
認可済みアクセス
OAuthのメリット • クライアントにクレデンシャルを渡す必要がない • 連携しているクライアントを把握しているため、サーバー側で連携を停止することができる
22
OAuthのはらむ危険 • 認可の意味を把握せず利用される危険性 • 認可を行うことで、Twitterのフォロワー全員にダイレクトメッセージを送信するサービスが登場
23
OAuthの未来 • OAuth 1.0 • OAuth 1.0a • OAuth WRAP • OAuth 2.0 • OpenID Connect...
24