Upload
kohei-matsuoka
View
1.870
Download
3
Embed Size (px)
Citation preview
OpenIDでWebの認証をもっと便利にMATSUOKA Koheihttp://www.machu.jp/diary/
twitter: machu
1
2008年はOpenIDの年大手サービスがOpenID発行サイトに参入
1月 … 米Yahoo!, Yahoo! JAPAN
8月 … mixi (マイミク認証, コミュニティ認証も)
10月 … Google Account
10月 … Microsoft (Windows Live ID対応発表)
OpenIDファウンデーション・ジャパンの設立
2
11:3011分30秒でわかるOpenID入門
3
OpenIDとは「○○のIDでログイン」を実現するための仕組み
http://atnd.org/ より4
利用者
Webサイト
Webサイト
Webサイト
従来Webサイトのログイン各Webサイトに登録したIDとパスワードでログイン
5
OpenIDでのログイン
利用者(End User)
OpenID発行サイト(OpenID Provider, OP)
OpenID対応サイト(Relying Party, RP)
発行サイトのIDで対応サイトにログインできる
対応サイトにパスワードは送られない
OpenID対応サイト(Relying Party, RP)
mixi, Google, Yahoo! JAPANなど
6
OpenIDのメリット(1) 利用者にとって
複数のIDとパスワードを管理しなくていい!
(2) OpenID対応サイト (RP) にとって
利用者のパスワードを管理しなくてよい!
(3) OpenID発行サイト (OP) にとって
保有するアカウントの価値が高まる!
7
OpenIDの最大の特徴「○○のIDでログイン」→複数の発行サイトが共存!
普及のために、とても重要なこと。
対応サイト
発行サイトA
発行サイトB 発行サイトD
発行サイトC
mixi
livedoorGoogle
Yahoo! JAPAN
8
OpenIDの実現方法「○○のIDでログイン」を実現するために
1. グローバルなID (URL) を用意する
2. ログイン先となる発行サイトを指定する
9
グローバルなID (1)
対応サイト
発行サイトA
発行サイトB
id:machu
id:machu
衝突
複数の発行サイトが存在 → IDが衝突すると困る
10
グローバルなID (2)
対応サイト
発行サイトA
発行サイトB
URLをIDとして使うことで、グローバルなIDを実現
URLで区別
http://www.hatena.ne.jp/kmachu/
http://profile.livedoor.com/k_machu/
11
ログイン先の指定 (1)複数の発行サイトが存在する。
ログイン先の発行サイトを利用者が指定する。
発行サイト対応サイト2. 発行サイトのログイン画面へ誘導
OpenIDでログイン
1. 利用者が発行サイトを指定する
12
ログイン先の指定 (2)OpenID 1.1では、ユーザのID (URL) を入力する。
https://id.mixi.jp/1741395
…覚えられません><
OpenID 2.0では、発行サイトのID (URL) でもOK。
mixi.jp
ちょっと短くなった
OpenIDでログイン
13
ログイン先の指定 (3)よく使われる発行サイトを事前に用意しておく。
キーボードによる入力が不要になった。
反面、用意されていない発行サイトを使えない。
入力フォームとの併用が現実的な解。
14
参考: ログインの流れ (1/2)
利用者 対応サイト
発行サイトhttp://example.jp/
利用者が入力したIDから発行サイトを特定する
15
参考: ログインの流れ (1/2)
利用者 対応サイト
発行サイトhttp://example.jp/
利用者が入力したIDから発行サイトを特定する
(1) IDを入力example.jp
15
参考: ログインの流れ (1/2)
利用者 対応サイト
発行サイトhttp://example.jp/
(2) IDから発行サイトを発見
利用者が入力したIDから発行サイトを特定する
(1) IDを入力example.jp
15
参考: ログインの流れ (2/2)
利用者 対応サイト
発行サイト
発行サイトから対応サイトへ認証結果を通知する
http://example.jp/
16
参考: ログインの流れ (2/2)
利用者 対応サイト
発行サイト
発行サイトから対応サイトへ認証結果を通知する
http://example.jp/
(3) 発行サイトにログイン
id:machu
16
参考: ログインの流れ (2/2)
利用者 対応サイト
発行サイト
発行サイトから対応サイトへ認証結果を通知する
http://example.jp/
(3) 発行サイトにログイン
id:machu
(4) 認証結果 (ID) を通知
http://example.jp/machu/
16
OpenIDの拡張機能 (1)名前やメールアドレスをOpenID対応サイトに通知。
ユーザ登録時の手間を省くために使用する。
対応サイト
発行サイト
17
OpenIDの拡張機能 (2)mixiのマイミク認証とコミュニティ認証
mixi内の属性情報をmixi外部で活用できる!
マイミクだけがコメントできるブログ
高専カンファコミュのメンバだけが使えるWiki
…ほしい?https://id.mixi.jp/1741395/friends/
https://id.mixi.jp/community/1651291/18
OpenID入門のまとめ
OpenIDは「○○のIDでログイン」を実現するための仕組み。
「利用者」、「発行サイト (OP)」、「対応サイト(RP)」の三者モデル。
複数の発行サイトが共存できる(とても重要)。
19
20
付録OpenIDを安心して使うために
21
よくある質問
OpenIDってセキュリティは大丈夫なの?
22
結論
信頼できる発行サイトを選びましょう。
23
OpenIDのリスク
フィッシング名寄せIDの再利用発行サイトのサービス停止
24
(1) フィッシング悪いOpenID対応サイトが偽のログイン画面へ誘導。
利用者がパスワードを入力 → ウマー
対応サイト
発行サイト 発行サイト(偽)
25
フィッシング対策
暗号化 (SSL, TLS) 対応のログイン画面を提供しているOpenID発行サイトを利用する。
秘密情報を入力するときはWebブラウザのアドレスバーを確認する。
Yahoo! JAPANのログインシールを利用する。
26
(2) 名寄せOpenIDは複数のWebサイトで同じIDを使う。
IDの名寄せが可能に。
対応サイトA
対応サイトB
対応サイトC
発行サイト
27
名寄せ対策セキュリティではなくプライバシーの問題。
Yahoo! JAPANはIDにランダムな文字列。
Yahoo! JAPANのIDは推測できない。
逆に、積極的にIDの同一性を主張したい場合もある
必要に応じて複数のOpenIDアカウントを使い分ける
https://me.yahoo.co.jp/a/Qc51zrFBeYpbtGdGquXK6qonwL0-#316fa
28
(3) IDの再利用
OpenID発行サイトからアカウントを消す
→ 他の人が同じアカウントで登録したら?
OpenID対応サイトに勝手にログインされる??
29
IDの再利用への対策発行サイトがIDのうしろに識別子をつけておく。
他の人が同じIDを取得しても、この識別子が変われば別IDとして認識される。
まともな発行サイトなら実装しているはず…。
https://me.yahoo.co.jp/a/Qc51zrFBeYpbtGdGquXK6qonwL0-#316fa
https://me.yahoo.co.jp/a/Qc51zrFBeYpbtGdGquXK6qonwL0-#317gs
30
(4) サービス停止発行サイトが落ちると対応サイトにログイン不可。
発行サイトが潰れると永遠に…
ドメインが第三者に渡ると悪用の恐れも。
31
サービス停止対策
対応サイトによっては、複数のOpenIDアカウントを登録できる。
落ちているときは別の発行サイト経由でログイン。
32
結論
信頼できる発行サイトを選びましょう。
33
おわりにOpenIDを使うとWebの認証がもっと便利になります。
機会があれば、ぜひOpenIDを使ってみてください。
そして、OpenID対応サイトを作ってみてください。
ご静聴ありがとうございました。
34