openid lecture 2008.08.18

99
1 OpenID でパスワード 1つだけ! 佐塚秀人 久留米工業大学 電子認証局市民ネットワーク福岡 久留米工業大学 ICT 講座 2008

Upload: kurume-institute-of-technology

Post on 24-May-2015

1.655 views

Category:

Technology


4 download

DESCRIPTION

久留米工業大学ICT講座2008 講習会 2008.08.18

TRANSCRIPT

Page 1: OpenID Lecture 2008.08.18

1

OpenID でパスワードは1つだけ!

佐塚秀人久留米工業大学

電子認証局市民ネットワーク福岡

久留米工業大学 ICT 講座 2008

Page 2: OpenID Lecture 2008.08.18

2

ログインサイトはいくつ?

いくつのログインサイトがありますか?すべて、パスワードは覚えていますか?

Page 3: OpenID Lecture 2008.08.18

3

パスワード?

パスワードはいくつありますか?パスワードはいくつ覚えていられますか?わかりにくいパスワードって?

Page 4: OpenID Lecture 2008.08.18

4

OpenID って何?

OpenID って知っていましたか?電子認証って知っていますか?OAuth って知っていますか?認可と認証の違いはわかりますか?

Page 5: OpenID Lecture 2008.08.18

5

Google について

Google はすごいと思いますか?Google に任せますか?

Page 6: OpenID Lecture 2008.08.18

6

Web2.0 って?

Web2.0 ってなんですか?Web3.0 って気になりますか?

Page 7: OpenID Lecture 2008.08.18

7

今日の話

続 Web2.0 の話(イントロ)Web における電子認証機能の必要性OpenID のしくみと機能OpenID にみる分散の世界29 日講演会予告!

Page 8: OpenID Lecture 2008.08.18

8

Part 1. イントロ

続Web2.0

Page 9: OpenID Lecture 2008.08.18

9

Web2.0 を代表するもの

ウェブログAmazon のウェブ・サービスGoogle のサービスSNSYouTube

Page 10: OpenID Lecture 2008.08.18

10

影が薄くなったもの

ワープロ教室有料ソフトパソコンそのもの

Page 11: OpenID Lecture 2008.08.18

11

PC からネットへ

大量情報の活用の時代情報のオープン化共有化PC 内の情報がネットワークへ

Page 12: OpenID Lecture 2008.08.18

12

Web2.0 とはティムオライリーによる評価

1.ユーザーの手による情報の自由な整理2.リッチなユーザー体験3.貢献者としてのユーザー4.ロングテール5.ユーザー参加6.根本的な信頼7.分散性

Page 13: OpenID Lecture 2008.08.18

13

Web 2.0 の特徴 (1)

ユーザーの手による情報の自由な整理従来:トップダウンの情報整理

旧 Yahoo! のディレクトリ型検索2.0 : 自由な情報分類

フォークソノミーソーシャル・ブックマーク情報共有サイト

Page 14: OpenID Lecture 2008.08.18

14

Web 2.0 の特徴 (2)

リッチなユーザ体験Ajax 等によるリッチ・インターフェースインストール不要ネットからの豊富なデータ提供リアルタイム双方向性Google Maps, GMail

Page 15: OpenID Lecture 2008.08.18

15

Web 2.0 の特徴 (3)

貢献者としてのユーザ情報提供の双方向性AmazonGoogle ページランク価格 .com

Page 16: OpenID Lecture 2008.08.18

16

Web 2.0 の特徴 (4)

ロングテール80:20 の法則

20% の商品が 80% の売上に貢献残りの 80% から利益を得る手段としてのネット

AmazonGoogle AdWords, AdSense

Page 17: OpenID Lecture 2008.08.18

17

Web 2.0 の特徴 (5)

ユーザー参加ユーザ主導のコンテンツでサービスを成立ソーシャルメディア

ウェブログSNSYouTubeにこにこ動画

Page 18: OpenID Lecture 2008.08.18

18

Web 2.0 の特徴 (6)

根本的な信頼オープンな知識の共有・活用集合知OSS :オープン・ソース・ソフトウェアWikipediaクリエイティブ・こもんずマッシュアップ

Page 19: OpenID Lecture 2008.08.18

19

Web 2.0 の特徴 (7)

分散性情報リンクの多様性トラックバック、パーマリンクWeb サービスマッシュアップファイル共有

Page 20: OpenID Lecture 2008.08.18

20

実際の 2.0 ビジネス

ネット上の情報の組織化大規模な情報の抱え込み分散にはならず集中へ?ユーザ主導というよりは大企業主導の方向個人の情報は分析の対象

Page 21: OpenID Lecture 2008.08.18

21

Google

ネットを調べつくす巨大システムあらゆる情報をネットへ

Google Maps -- ストリートビューGMail -- ミュニケーションをネット上へGoogle Books – 電子図書館Google Apps -- ツールをネット上へ

Page 22: OpenID Lecture 2008.08.18

22

続 Web2.0 は

大企業の Web2.0 へ情報をネット上へ対 Google 的 Web ビジネスへ

MicrosoftSun MicrosystemsYahoo!楽天 ...

Page 23: OpenID Lecture 2008.08.18

23

問題!

ユーザは情報提供するのみ都合のよい情報しか得られない情報の流通・連携がユーザに提供されていない個人ごとの情報は遮られている?

Page 24: OpenID Lecture 2008.08.18

24

ユーザの復権

個人の情報のコントロール権知りたい情報を知りえるネットワーク情報流通の可視化

Page 25: OpenID Lecture 2008.08.18

25

求める未来

個人がコントロールできるネットワーク本来の意味の分散(民主的?)見えない・見られない自由ユーザ間の自由な連携Web3.0 ??に向かう世界

Page 26: OpenID Lecture 2008.08.18

26

Part 2. 認証

Web 電子認証

Page 27: OpenID Lecture 2008.08.18

27

ネット上の認証

電子認証ネットの利用者が誰かを特定する同一人物であることを証明する情報の発信者を特定する特定の人だけが情報を利用できる

Page 28: OpenID Lecture 2008.08.18

28

認証技術

PKI : Public Key Infrastructure公開鍵暗号基盤 X.509公開鍵・電子証明書を使う認証基盤政府で利用(電子政府)公的個人認証e-Tax

Page 29: OpenID Lecture 2008.08.18

29

CACAnet

電子認証局市民ネットワーク福岡CACAnet Fukuoka市民向けの電子認証局電子認証による安全なネットワークの普及?実際はうまくいっていない?PKI は固い?、難しい??

Page 30: OpenID Lecture 2008.08.18

30

認証の必要性

スパム・メール(迷惑メール)コメント・スパムフィッシング詐欺ネット・オークション詐欺インターネット・バンキングネット・コマース

Page 31: OpenID Lecture 2008.08.18

31

PKI は?

セキュリティとプライバシー身分を明かす≒本人の情報が漏れる公的個人認証の証明書住民票のように個人情報が書かれている実際のところ使えない

ネットにおける匿名のメリットも大きい

Page 32: OpenID Lecture 2008.08.18

32

必要なのはゆるい認証?

大量の不正な情報を流通できにない方法同一人物であることがわかればいい

Page 33: OpenID Lecture 2008.08.18

33

リスクを負わない認証

ブログへのコメント同じ人であることがわかる程度なりすましはできない破られても大きな責任は双方にない金銭的なリスクはない

Page 34: OpenID Lecture 2008.08.18

34

ログインするサービス

ネット上にリソースを確保する以前に使った人と同一人物か?複数サービス情報を共有するためプロバイダレベルの認証提供

Page 35: OpenID Lecture 2008.08.18

35

パスワード山

各サイトごとで異なる ID 、パスワード異なる ID 文字のルール異なるパスワードのルール

Page 36: OpenID Lecture 2008.08.18

36

ルールの例

数字 8 桁特殊文字を必ず含み 8 文字以内英数字のみで特殊文字を含まない

Page 37: OpenID Lecture 2008.08.18

37

同じ ID パスワードが使えない

重要なサイトの ID 、パスワードインターネットバンキングなど

信頼できないサイトの ID 、パスワード同じにはできないよね!

Page 38: OpenID Lecture 2008.08.18

38

認証 API の公開

プロバイダが認証の手段を公開共通に ID, パスワードを利用可ちょっと、うれしい!

Page 39: OpenID Lecture 2008.08.18

39

プロバイダの認証 API

Yahoo! 認証はてな認証Flickr 認証Livedoor AuthGoogle Auth

Page 40: OpenID Lecture 2008.08.18

40

Google Auth の例

Google のサービスを共通に利用できるシングル・サインオン一度ログインすれば、あとは自由に利用可能

Google以外のサイトにも一部連携可Google API を利用して情報をアクセス可

Page 41: OpenID Lecture 2008.08.18

41

補:シングル・サインオン

ID とパスワードの入力が1度で OK一度サインオンすれば複数のサービスを利用可能オープンな規格: SAML⇒PKI をベースとするが普及していないGoogle のツール間では既に実現

Page 42: OpenID Lecture 2008.08.18

42

Flickr API の認証

Flickr の写真を利用するための認証Flickr 上の写真へのタグの埋め込みトークンを使った連携認証ではなく、認可機能の提供⇒ これは後ほど ...

Page 43: OpenID Lecture 2008.08.18

43

Flickr の認可機能

Page 44: OpenID Lecture 2008.08.18

44

やっぱり同じ!

特定のプロバイダに依存してしまう自由に認証元を選択できない結局、多くの ID 、パスワードを管理異なるプロバイダ間は連携もとれない!

Page 45: OpenID Lecture 2008.08.18

45

求められる公開規格

サービスプロバイダに依存しないプライバシーが守られる認証情報が遮断される

ログイン先には ID 、パスワードがばれない

Page 46: OpenID Lecture 2008.08.18

46

Part 3. オープン認証

OpenID

Page 47: OpenID Lecture 2008.08.18

47

OpenID 登場

やっと出ました OpenIDhttp://www.openid.net/

遅くてなってすみません

Page 48: OpenID Lecture 2008.08.18

48

OpenID 概要

複数の Web サイトを1つの ID で利用URI(URL)を ID として用いる( 2.0 では XRI も使用可)認証機能と属性交換機能誰でも認証サーバを立ち上げ可

Page 49: OpenID Lecture 2008.08.18

49

まずは DemoOpenID でログインしてみます

http://www.myopenid.com/ http://www.linoit.com/

Page 50: OpenID Lecture 2008.08.18

50

OpenID のしくみ

登場者OPOP : OpenID Provider, 認証を行うサイト例  http://www.myopenid.com/

RPRP : Relying Perty, 認証を利用するサイト例  http://www.linoit.com/

UserUser : Web サイトの利用者

Page 51: OpenID Lecture 2008.08.18

51

OpenID のしくみ(図)OP: 認証サービス RP: 対応サイト

User: 利用者

①接続と ClaimedID の提示

Page 52: OpenID Lecture 2008.08.18

52

注: Claimed ID について

ユーザがログオン時に入力する ID入力できるもの正式な本人の OpenID転送を指定してあるページの URLOP の URL ( 2.0 のみ)XRI ( 2.0 のみ)

Page 53: OpenID Lecture 2008.08.18

53

OpenID のしくみ(図)OP: 認証サービス RP: 対応サイト

User: 利用者

OP をルックアップし、暗号鍵を交換する

Page 54: OpenID Lecture 2008.08.18

54

注:鍵の交換について

RP と OP の秘密通信のための暗号鍵事前に鍵を共有していれば交換は行わないDiffie-Hellman アルゴリズムを用いる鍵交換せず、 SSL/TLS を使うことも可

Page 55: OpenID Lecture 2008.08.18

55

OpenID のしくみ(図)OP: 認証サービス RP: 対応サイト

User: 利用者

③OP へ認証要求をリダイレクト

Page 56: OpenID Lecture 2008.08.18

56

注:リダイレクトについて

HTTP ページ転送(コマンド 302 )ブラウザ経由で別のサイトに通信OP と RP は直接は通信しないリダイレクト後は OP の画面が表示

Page 57: OpenID Lecture 2008.08.18

57

OpenID のしくみ(図)OP: 認証サービス RP: 対応サイト

User: 利用者

③OP のページの表示後OP へパスワード送信

Page 58: OpenID Lecture 2008.08.18

58

注: OP へのログイン

パスワード等によるログインRP の認証許可RP への属性値の選択

OP のサイトに既にログインし、 RP を確認済であればしていれば、パスワードの送信は不要( Immidiateモード ) 、再度直接 RP へリダイレクト

Page 59: OpenID Lecture 2008.08.18

59

OpenID のしくみ(図)OP: 認証サービス RP: 対応サイト

User: 利用者

③④⑤認証結果をリダイレクト

Page 60: OpenID Lecture 2008.08.18

60

OpenID のしくみ(図)OP: 認証サービス RP: 対応サイト

User: 利用者

③④⑤

認証結果の検証

⑦ログイン画面の返信

Page 61: OpenID Lecture 2008.08.18

61

OpenID の特徴

Web に特化した通信ページのリダイレクト機能を活用

URI(URL)を ID に使用するOP と RP の独立性

プライバシー保護の徹底OP も RP も自由に立ち上げられる

Page 62: OpenID Lecture 2008.08.18

62

リダイレクトのメリット

OP への通信に RP を経由しないこれはダメ!

OPRP

OP への通信を RP 傍受されていまう例:パスワード

Page 63: OpenID Lecture 2008.08.18

63

ID について

メールは ID にできない⇒ 不正な RP にメールを送られてしまう?URI なら少し安全!2.0 では、個人の ID を入力しなくていい2.0 は XRI も利用可

Page 64: OpenID Lecture 2008.08.18

64

XRI について(おまけ)

eXtensible Resource Identifireネット上のリソース定義例  xri://@cacanet*sazuka   xri://=sazukaXRDS という XML 文書で記述プロバイダに依存しないリソースに定義

Page 65: OpenID Lecture 2008.08.18

65

拡張仕様

SREG: Simple REGistaration extension(1.1, 2.0)AX: Attribute Exchange extension(2.0 only)PAPE: Provider Authentication Policy Extension (1.1 and 2.0)

Page 66: OpenID Lecture 2008.08.18

66

SREG

RP が OP から受け取れる属性値単方向、読み込みのみ

nickname ニックネームemail メールアドレスfullname フルネームdob 誕生日gender 性別    などなど

Page 67: OpenID Lecture 2008.08.18

67

SREG の用途

ユーザの属性を OP側に登録できる何度も同じような内容を入力しなくていいRP には必要な項目を選んで渡すことができるさまざまなペルソナ(人格)を選択可能

問題?誤って、問題のある個人情報を渡してしまう可能性Yahoo! では SREG は現在扱っていない

Page 68: OpenID Lecture 2008.08.18

68

SERG の Demo

myopenid.com の Persona

Page 69: OpenID Lecture 2008.08.18

69

SREG は便利?

ネット上の人格を複数もてるのは便利一元管理できるのもすばらしい問題は操作ミス?OP サイトの作り方に要工夫

Page 70: OpenID Lecture 2008.08.18

70

AX :属性値の交換

双方向双方向の属性値交換SREG より多くの属性値をサイト間で交換2.0 からで、まだほとんど使われていない情報の共有、交換、認可機能??に使える今後の勉強課題(すみません)

Page 71: OpenID Lecture 2008.08.18

71

PAPE :認証のポリシー

RP から OP へ認証ポリシーの要求きちっと本人確認しておくれパスワードじゃなくて PKI で ...

ただし、義務ではないOP の信頼性のポイント?

Page 72: OpenID Lecture 2008.08.18

72

認証サーバの発見方法(おまけ)

いったいどこに OP は登録するのか?Claimed Identifire からの発見個人の URL からHTML のヘッダ要素からのリンクHTTP のヘッダの X-XRDS-Location: に XRDSを記述( 2.0, Yadis プロトコル)

Page 73: OpenID Lecture 2008.08.18

73

使える OP

Yahoo!はてなLivedoorGoogle Bloggeropenid.ne.jp (ここが日本は最初)

Page 74: OpenID Lecture 2008.08.18

74

OpenID まとめ

実はすでにサービスは動いているPKI などと違い簡単に利用可能決して複雑じゃない

Page 75: OpenID Lecture 2008.08.18

75

Part 4. 試用

使ってみましょう

Page 76: OpenID Lecture 2008.08.18

76

おすすめの OP

日本語openid.ne.jp http://www.openid.ne.jp/Yahoo! http://openid.yahoo.co.jp/はてな http://www.hatena.ne.jp/info/openidLivedoor http://auth.livedoor.com/openid/

英語MyOpenID http://www.myopenid.com/

Page 77: OpenID Lecture 2008.08.18

77

Part 5. 問題点

ここがあぶない!かも?

Page 78: OpenID Lecture 2008.08.18

78

OP も RP も信用できない!?

フィッシング・サイトフィッシング・サイトの可能性にせもの OPにせもの OP へ導く RP

Page 79: OpenID Lecture 2008.08.18

79

OP の選択の責任

OP は誰でも立ち上げられるセキュリティ面のあまい OP も存在可選択はユーザの責任!?

Page 80: OpenID Lecture 2008.08.18

80

実際のセキュリティ

信頼できるサイトを装って個人情報の取得(リダイレクトを使った悪用)盗聴によるなりすまし検索エンジンを使った ID URL の収集対策方法はある

Page 81: OpenID Lecture 2008.08.18

81

OP, RP の選択

ブラックリストホワイトリスト結局はこれも必要?セキュリティ・チェック機能の充実

Page 82: OpenID Lecture 2008.08.18

82

OP の評価手段OP を運営してきた実績認証フォームに対するヘルプ機能 https への対応アカウントのリカバリ機能の充実プライバシーポリシーの内容スパム、セキュリティ対策AXへの対応PAPE への対応アカウント登録手続きの内容

Page 83: OpenID Lecture 2008.08.18

83

セキュリティ面の課題

安全な OP, RP 開発・立ち上げの支援機能チェックのためのテストベッドCACAnetCACAnet 福岡への課題???福岡への課題???

Page 84: OpenID Lecture 2008.08.18

84

とりあえずは ...

ゆるい認証であることを理解特定のサイトへの攻撃はあるが一般的に危険なわけではないリスクの少ない分野で応用を ...

Page 85: OpenID Lecture 2008.08.18

85

Part 6. 活用と今後

どう使おうか?

Page 86: OpenID Lecture 2008.08.18

86

RP の機能を提供する

ユーザ登録画面の簡素化認証機能の作りこみを丸投げできるユーザ登録の敷居を下げるSSO :シングル・サイン・オンが可能Web サービスの認証への応用

Page 87: OpenID Lecture 2008.08.18

87

SSO: シングル・サインオン

複数のサイトが SSO で連携異なるサイト間でデータの交換・共有ツールのマッシュアップOpenID では難しいかも ...

OAuthOAuth 規格 ...

Page 88: OpenID Lecture 2008.08.18

88

OAuth が出てきたので

認証と認可認証:利用者が誰かを認証する- Authentication認可:情報や機能の利用を許諾する- Authorizationマッシュアップには認可機能が必要???

Page 89: OpenID Lecture 2008.08.18

89

OAuth について

OAuth は Twitter から生まれたFlickrや Google では認可を扱っているセキュリティ・トークンよる許諾

機能利用のためのチケット、許可証信用情報を渡すことなく、情報・機能を提供

Google は OAuth を取り込んでいる

Page 90: OpenID Lecture 2008.08.18

90

RP からやってみよう

ウェブサイトのログイン機能パスワードを保持する必要がないOpenID ライブラリをそのまま利用まずはユーザ登録の敷居を下げられる??

Page 91: OpenID Lecture 2008.08.18

91

RP の立ち上げ方

すでに主要なライブラリは完成済Ruby ( Ruby on Rails )PHPPerlPythonJava

Page 92: OpenID Lecture 2008.08.18

92

Ruby on Rails との親和性

ruby-openid が利用可能( RP & OP )1.1 と 2.0 に対応http://openidenabled.com/ruby-openid/Rails はリダイレクトと親和性ありopen_id_authentication プラグイン

Page 93: OpenID Lecture 2008.08.18

93

OP の機能を提供する

多くのサイト間の連携をサポート可能地域サイトの連携ユーザのトラッキングAX を利用した情報交換・共有サイト

Page 94: OpenID Lecture 2008.08.18

94

OP の課題

セキュリティ面の配慮ユーザへの十分な説明、ヘルプの充実まずは実験サイトからテストベッドを準備中( CACAnet )

Page 95: OpenID Lecture 2008.08.18

95

OpenID + OAuth

SSO からマッシュアップ連携へ大企業サイトに集中しないユーザ主体のリコメンデーション

ユーザが設定可能なサポート環境情報の流通が見えるネットワーク

Page 96: OpenID Lecture 2008.08.18

96

つづきは 29 日へ

29 日の講演会予告Ruby on Rails と OpenID, OAuth を考えるWeb サービスへの応用新しいマッシュアップの構想?Web3.0 へのあしがかかりとは ...

Page 97: OpenID Lecture 2008.08.18

97

参考サイト(シリーズもの)

いますぐ使える OpenID :技術評論社http://gihyo.jp/dev/feature/01/openid

OpenID の仕様と技術:@ IThttp://www.atmarkit.co.jp/fsecurity/index/index_openid.html

使って広がる OpenID の輪: ThinkIThttp://www.thinkit.co.jp/free/article/0712/7/1/

Page 98: OpenID Lecture 2008.08.18

98

参考サイト(個別資料、ブログなど)OpenID と XRI――XRI の基本: ITmedia

http://www.itmedia.co.jp/enterprise/articles/0805/23/news007.html

Yet Another Hackadelic : ZIGOROuhttp://d.hatena.ne.jp/ZIGOROu/

API アクセス権を委譲するプロトコル、 OAuth を知る:@IT

http://www.atmarkit.co.jp/fsecurity/special/106oauth/oauth01.html

Page 99: OpenID Lecture 2008.08.18

99

おわり