More Related Content
Similar to 081210 Idcon 04 Itoh Peopleservice
Similar to 081210 Idcon 04 Itoh Peopleservice (20)
081210 Idcon 04 Itoh Peopleservice
- 1. Identity Conference #4
Liberty Alliance ID-WSF 2.0
“People Service”
2008年12月10日
NTT情報流通プラットフォーム研究所
伊藤 宏樹
© 2008 NTT Information Sharing Platform Laboratories
- 2. 目次
1. ID-WSF の復習
2. People Service とは?
3. People Service のユースケース
4. People Service におけるプライバシ保護
5. ID のグループ化に関する考察 (おまけ)
© 2008 NTT Information Sharing Platform Laboratories 2
- 3. 1. ID-WSF の復習
© 2008 NTT Information Sharing Platform Laboratories
- 4. 1.1 ID-WSF (Web Services Framework) とは
• ユーザの属性情報をサーバ間で流通させる際の手続き、データモデルを定義
WSP (Web Service Provider = 属性提供者) DS (Discovery Service)
住所
⽒名 ⿊⼦
この⼈の住所教えて
UA (User Agent)
WSC (Web Service Consumer = 属性利用者)
ユーザの住所や⽒名等、データモデルの書式は ID-SIS
ユーザの住所や⽒名等、データモデルの書式は ID-SIS
(Service Interfaces Specifications) にて規定
(Service Interfaces Specifications) にて規定
© 2008 NTT Information Sharing Platform Laboratories 4
- 5. 1.2 ID-WSF の動作イメージ (簡略版)
WSP DS
住所
⽒名
(3) この⼈の住所を
教えてください
(2) WSPが
知ってるよ!!
(4) 教えてあげるよ!!
ただしユーザが (1) 誰が情報を
okと⾔ったらね 知っていますか?
UA WSC
© 2008 NTT Information Sharing Platform Laboratories 5
- 7. 2.1 これまでのSNS
• 複数のSNSサイトが独自にサービスを構築している。
– 認証機能、SNSアプリ、ソーシャルグラフ情報を各サイトが独自に保有、管理している。
– ユーザはコンタクトリストを各サイトにおいて構築、管理しなければならない。
ウェブサイトA ウェブサイトB ウェブサイトC
SNSアプリ SNSアプリ SNSアプリ
認証機能 認証機能 認証機能
© 2008 NTT Information Sharing Platform Laboratories 7
- 8. 2.2. People Service による連携ソーシャル・アイデンティティ管理
• 各ウェブサイト では SAML による ID 連携が行えることが前提
• People Service (PSプロバイダ@ウェブサイトB) の機能
– ユーザ間のつながり情報 (リスト情報やグループ情報など) の管理
– 各ユーザのプライバシを保護しながら、つながり情報を他サイト (サイトA、C) に提供
する
SAML と同様に実アカウント名がサーバ間で共有せずに実現可能
ウェブサイトA ウェブサイトB ウェブサイトC
認証機能 SSO 認証機能 SSO 認証機能
SNSアプリ SNSアプリ SNSアプリ
問合せ 問合せ
PSクライアント PSプロバイダ PSクライアント
応答 応答
ユーザ間連携情報要求サイト ユーザ間連携情報提供サイト ユーザ間連携情報要求サイト
© 2008 NTT Information Sharing Platform Laboratories 8
- 9. 2.3. People Service 仕様が規定する機能
グループ情報の生成、修正、削除、取得に関して、以下の項目に対するプロト
コル、スキーマ、そして処理ルールを定義している。
対象
ユーザ グループ
操作
生成 追加 グループの追加
(ユーザ名の変更) (グループ名の変更)
修正
グループへのユーザの追加
削除 グループの削除
削除
グループからのユーザの削除
• グループに所属するメンバのリスト
取得
• 名前識別子 (NameID、仮名ID)
取得 条件に基づくグループのリスト取得
取得
• あるユーザが当該グループに所属
するかどうかのテスト
© 2008 NTT Information Sharing Platform Laboratories 9
- 10. 3. People Service のユースケース
~ユーザ間で写真を共有する~
Friends.idp.com Alice の IdP 兼 PS プロバイダ
Photos.example.com Alice の写真共有サイト
Blogs.example.com Alice のブログサイト
IDP.example.com Bob の IdP
© 2008 NTT Information Sharing Platform Laboratories
- 11. 3.1 ユーザの PS リストに登録済のメンバと写真を共有する [1/2]
Photos.example.com
Welcome Alice
(1) Alice は Photos に シングルサインオ
ンし、「知人との写真の共有サービス」
を要求する。
Alice
(1)
OK
友人と写真を共有する場合には
ここをクリックしてください。
(2) Photos は Friends に対し、Alice の PS リストを要求する。 (2) (3)
(3) Friends は Photos に対し、Alice の PS リストを応答する。
(注) PS リスト: Alice が Friends 上で管理しているコンタクトリストの個人
に (Alice の任意で) 付与したニックネームのリスト。
PS リストには Alice が任意でつけたユーザのニックネームのみが含ま
れ、ID 連携に必要な (SAMLで言うところの) 仮名 ID は含まれない。 Friends.example.com
© 2008 NTT Information Sharing Platform Laboratories 11
- 12. 3.1 ユーザの PS リストに登録済のメンバと写真を共有する [2/2]
Photos.example.com
(4) Alice は自分の写真を Cathy
と共有することを要求する。 Alice’s friends list
Alice Cathy
Cathy (7)
Mike
(4)
Jane
OK
(5) Photos は Friends に対し、 Cathy の Photos におけ
る NameID (SAML の匿名ID) を要求する。
(5) (6)
(6) Friends は Cathy の NameID を応答する。
(7) Photos は NameID をもとに Cathy を検索し、Cathy
に対し、Alice の写真が閲覧できるサービスを提供する。
(注) PS リストは Alice が付与したニックネームのリストの為、Cathy の ID
と一致するかどうかは不明。PSリストに仮名 ID が含まれると、Photos
は不要な仮名 ID (ここでは Mike、Jane が該当) まで受け取ってしま
う為、このような方式が取られている。 Friends.example.com
© 2008 NTT Information Sharing Platform Laboratories 12
- 13. 3.2 ユーザの PS リストに未登録のメンバと写真を共有する [1/5]
このページは
Photos.example.com 3.1 [1/2] に同じ
Welcome Alice
(1) Alice は Photos にサインオンし、「知
人との写真の共有サービス」 を要求
する。
Alice
(1)
OK
友人と写真を共有する場合には
ここをクリックしてください。
(2) (3)
(2) Photo は Friends に対し、Alice の PS リストを要求する。
(3) Friends は Photos に対し、Alice の PS リストを応答する。
Friends.example.com
© 2008 NTT Information Sharing Platform Laboratories 13
- 14. 3.2 ユーザの PS リストに未登録のメンバと写真を共有する [2/5]
Photos.example.com
Alice’s friends list
(4) Alice は自分の PS リストに Bob を加 Cathy
えた上で、Bob との写真の共有を要 Mike
求する。 Jane OK
Alice
(4)
Bob 登録
PS リストにない友人を登録し、
写真を共有する。
(5) (6)
(5) Photos は Friends に対し、Alice の PS リストに Bob を
追加することを要求する。
(6) Friends は Photos に対し、Alice の PS リストに Bob を
追加するためのワンタイム URL (Friends 上のサービス)
を応答する。 Friends.example.com
© 2008 NTT Information Sharing Platform Laboratories 14
- 15. 3.2 ユーザの PS リストに未登録のメンバと写真を共有する [3/5]
Photos.example.com
(7) Alice は Bob に対し、ワンタイムURLを送信する。
(8) Bob は Photos にアクセスする。
Welcome Bob
(8) Alice さんからあなたに写真共有
Bob
のリクエストが届いています。
(9) Alice さんの写真を見ますか?
(10) はい いいえ
Alice さんによる写真の共有を承諾する場
合、Bob さんは Friends にて管理される
(7) Alice さんの PS リストに加えられることに
なります。
(9) Photos は Bob が Alice の写
(7) Come see my photos
真を見るにあたって、Bob に対
☆ Alice 宛先: Bob 19:30 返信
し、Alice の PS リストに加えら
Hi Bob, if you would like to see my latest
photos, please click here. れること、の承諾を求める。
http://photos.example.com/QwerTy… (10) Bob は Alice の PS リストに加
Alice Alice えられることを承諾する。
© 2008 NTT Information Sharing Platform Laboratories 15
- 16. 3.2 ユーザの PS リストに未登録のメンバと写真を共有する [4/5]
Photos.example.com
(10) Bob は Alice の PS リストに加えられることを承諾する。
(11) PS リストの更新の為、Photos から Friends に遷移する。
Bob (10)
(11)
Welcome Bob
(12) あなたは Photos.example.com
にて Alice さんのコンタクトリスト
に加えられることを希望しました。
本当に実行しますか?
Welcome! (13) 実行には IDP での認証が必要と
なります。
IDとパスワードを入力してください。 はい いいえ
ID Bobby123 Friends.example.com
passwd
(12) Friends は Bob に対し、Bob の IDP との認証連携をおこ
はい いいえ なってよいか確認を取る。(ID連携が未了の場合)
(13) IDP と Friends との間の Bob の IDが連携される。
IDP.example.com (Friends 向け匿名IDがIDPのレポジトリに登録される)
© 2008 NTT Information Sharing Platform Laboratories 16
- 17. 3.2 ユーザの PS リストに未登録のメンバと写真を共有する [5/5]
(14) IDP は Friends および Photos に対する Bob の匿名 ID を生成 Photos.example.com
し、Photos に対する匿名 ID を暗号化した上で、Friends に返却
する。
(15) Friends は (a) IDP との間で Bob の ID を連携させる、(b) Welcome Bob123
Photos に対する Bob の匿名 ID を生成する、(c) Photos に対し、 Alice’s Photos
IDP—Photos および Friends—Photos の匿名ID を通知する。
Bob (17) (16)
ID Bob123
(15) NameID
NameID NameID for Photos NameID
ID Bob0000
NameID for Photos NameID
(14) NameID
NameID for Friends
Friends.example.com
ID Bobby123 (16) Photos は復号した匿名 ID を用いて、IDP との間で Bob の ID を連携
NameID
する。
(もし、IDP と Photos との間で既に Bob のIDが連携されていた場合、
NameID 新しい匿名IDで上書きされる)
IDP.example.com (17) Bob は Photos にて Alice の写真を閲覧できる。
© 2008 NTT Information Sharing Platform Laboratories 17
- 18. 4. People Service における
プライバシ保護
© 2008 NTT Information Sharing Platform Laboratories
- 19. 4.1 People Service とプライバシ保護
• 通常のソーシャルグラフ共有方式
– 当該ユーザが、ソーシャルグラフ情報提供元で管理
するコンタクトリスト (ユーザリスト、アドレス帳等) に
登録している、メールアドレスなどを識別子として、
ユーザリストをサーバ間で交換している。
• People Service
– アカウント間の関連付け (PSリストの作成) や、関連付け (PSリストに基づく、ユーザIDの取得)
を、ユーザのプライバシ保護を考慮した形で行う。
– IDP—Friends、IDP—Photos、Friends—Photos の間で異なる仮名 ID を用いる。
• 3者間で同じ ID を使ってもよいし、実 ID を使ってもよいのは SAML と同じ。
– 「PS リスト」 ≠ 「Friends が持つグループの実ID、仮名IDのリスト」
• 「PS リスト」 = 「当該リストを管理するユーザが任意でつけた Nickname 等」
(を用いることを想定している)
• Photos は PS リストに含まれるユーザの Nickname を鍵に、当該の ID を PS に問い合わ
せる。
© 2008 NTT Information Sharing Platform Laboratories 19
- 21. 5.1. IDグループ化の方法論
1. 認証連携的側面
– SAML のコンテキスト拡張で書ける事柄
SAML 2.0 “Shared Credential” 拡張として規定
LA ID-WSF 2.0 “People Service” でも規定
– グループを表すIDと個人ユーザを表すIDの連携
– グループを表すID間の連携
SP は IDP が示すグループIDに対する認証結果を受け取るだけ。
「IDP の言うことは信じなさい」
2. サービス連携的側面
– SAML のコンテキスト拡張では書けなかった事柄
LA ID-WSF 2.0 “People Service” で規定
– プロバイダ間で、あるユーザが所属するグループのリストを取得する
– プロバイダ間で、あるグループに所属するメンバのリストを取得する
– プロバイダ間で、あるユーザの、あるグループへの追加や削除を要求する
– プロバイダ間で、あるユーザが、あるグループに所属しているかどうかを確認する
SP は PS に対し、能動的にグループIDの操作を要求できる。
「SP の言うことを聞きなさい」
© 2008 NTT Information Sharing Platform Laboratories 21