Mais conteúdo relacionado Mais de Kohei MATSUOKA (6) Secured Authentication Method for Managing Consumer-Generated Information in Web-Services3. 背景
►インターネットを取り巻く環境の変化
ネットワークの普及と利⽤者の増⼤
オープンソースの発展によるコスト低下
►Webの利⽤形態の変化、
いわゆる「Web2.0」
利⽤者発信情報 (ブログ, SNS)
Webサービス, WebAPI化
2008/1/24 3 8. モチベーション
►対象
利⽤者発信情報を扱うWebサービス
►⽬的
第三者経由での利⽤者発信情報の操作
利⽤者のパスワードを第三者に渡さない
2008/1/24 8 9. トークンを⽤いた認証⽅式
► Webサービスの認証にトークンを⽤いる
Webサービスのサーバは利⽤者をパスワードで認証
► 普及しているとは⾔いがたい
サービスごとに個々に実装されている
(1) ID, パスワード Provider
利⽤者 (3)
トークン [Webサービス] トークン
(2) Consumer
2008/1/24 9 11. コンセプト
► 従来の問題点
パスワード⽅式: 秘密情報が第三者へ
トークン⽅式: サービス個々に実装
► 実装コストが普及の妨げではないか
► 提案⽅式 (CSS2007で発表)
安全性の向上と実装規模の削減
SSOを拡張してトークン発⾏を実現
► 実装: OpenIDを採⽤
2008/1/24 11 12. OpenIDの概要 (1)
►OpenID Auth 2.0 (2007.12)
インターネットでのシングルサインオン
URLがID (複数ドメインでの利⽤)
►多数のプレイヤー
AOL, livedoor, はてな, Sun Microsystems
Yahoo!, Yahoo Japan! (2008.2~)
2008/1/24 12 13. OpenIDの概要 (2)
ド)
ワ
ー Provider
Provider
ス
(パ
u est
) (OpenID Provider)
(OpenID Provider)
認証 Re
q
者
の
nI D n se)
e o
利⽤ Op e sp
(5) ( R
要求 e nI D (2) Discovery
利⽤者 認証 ( Op
(4) 応答 (3) 鍵共有
認証
(6) (7) 認証応答の検証
(1) ID Consumer
Consumer
(URL)
の提⽰ (Relying Party)
(Relying Party)
2008/1/24 OpenID Authentication 2.0, Chapter 3. Protocol Overview 13
http://openid.net/specs/openid-authentication-2_0.html 14. OpenID拡張を⽤いたトークン発⾏
►OpenID拡張領域
Provider
Provider
トークン要求 OpenIDレスポンス
+ トークン応答
トークン応答
►メッセージ⽣成 利用者
利用者
はOpenIDに依存 OpenIDリクエスト
+ トークン要求
Consumer
Consumer
2008/1/24 14 20. ソフトウェア構成
► OpenIDライブラリ (ruby-openid) を拡張
► Ruby on Railsのコントローラから利⽤
コントローラ Provider
(Consumer/Provider) コントローラ
Ruby on Rails トークン拡張
OpenIDトークン拡張 use
OpenIDライブラリ
ruby-openid 2.0.0 Consumer
コントローラ
Ruby on Rails 2.0.1 Ruby on Rails
Ruby 1.8.5
OS (Ubuntu)
2008/1/24 20 26. 機能の⽐較
►トークン発⾏と取得はどちらも可能
提案⽅式 OAuth
(SSOを拡張) (個別に実装)
トークンの
○ ○
発⾏と取得
メッセージの ○ ○
改ざん防⽌ (MAC, nonce) (MAC, nonce)
⽤途に応じた 仕様を拡張する
トークン発⾏ ○
ことで実現可
(操作種別、回数)
2008/1/24 26 29. まとめ
►従来の問題点
パスワード⽅式: 秘密情報が第三者へ
トークン⽅式: サービス個々に実装
►提案⽅式
OpenIDを拡張してトークンを発⾏
Ruby上で実装
独⾃実装との⽐較で1/10以下の規模
2008/1/24 29 32. ToDoリストの取得
►Consumerはトークンを使って
Provider上のToDoリストを取得する
ToDo管理サービス
ToDo管理サービス
(Provider)
(Provider)
ン
ク
利⽤者 ト
ー
トークン ToDoリスト
ToDo取得サービス
ToDo取得サービス
(Consumer)
(Consumer)
2008/1/24 32