« mod_webdev | メイン | フィードビジネス・カンファレンス リンク集 »

2005年12月08日

RSS Feed と認証

 本日 (12月8日) フィードビジネス・カンファレンス (FBS カンファレンス) で RSS Feed の拡張について話しました(資料は後ほどカンファレンスのページで公開されると思います)。カンファレンスでは Podcasting を始めとするさまざまな RSS の拡張を紹介したのですが、本エントリでは、その中で説明した RSS Personalization について書きたいと思います。

I. 背景

 RSS は今日、現在ブログやニュースといった、主に公開情報を配信するために使われています。しかし今後は、Eコマースや社内ソフトウェア、SNS といった認証やパーソナライゼーションが必要な分野でも使われていくだろうと考えられます。
 現時点でも Basic 認証を使用した RSS 配信は行われていますが、ウェブ型 RSS リーダーに他のサービスのパスワードを教えるのは問題があります (hail2u.net - bloglines 経由でパスワードが流出した例)。
 このような状況に対処するために、 RSS 配信等、特定サービス専用の認証キーを、ウェブサービスとウェブ型 RSS リーダーを始めとする mash up サービス間で交換できる仕組みが求められているのではないでしょうか (cf. blog.bulknews.net - Authentication/Identity for Mashups)

II. 仕様

 さまざまな方法が考えられますが、以下の方式が、移行の障壁が低くてよいのではないでしょうか。
 基本的な発想としては、401 レスポンスにトークン発行ページの URL を含め、リソースのコンシューマーは、その URL に対して HTTP リダイレクトでトークンを要求するというものです。

1) feeder (RSS 配信者) は Basic 認証 注1 を使用して RSS を配信する

2) feeder は 401 レスポンス (認証失敗) を返す際に、 X-Auth-Transfer ヘッダを付与する

GET /rss HTTP/1.0
Host: feeder.example.com

HTTP/1.0 401 Authorization Required
WWW-Authenticate: basic realm="rss"
X-Auth-Transfer: basic http://feeder.example.com/authme

3) reader (RSS 受信者) は、X-Auth-Transfer ヘッダを含む 401 レスポンスを受け取ると、ヘッダの URL へリダイレクトする

http://feeder.example.com/authme?return=http://reader.example.jp/addfeed&arg=XXXXXXXX

	return	- 認証情報の返信先 URL
	arg	- feeder に返信してほしい任意の値 注2

4) feeder は、ログインフォームやクッキー等を用いてユーザー確認を行う

5) feeder は、認証に成功すると、RSS 配信専用のパスワードを生成して reader が指定した URL へリダイレクトする

http://reader.example.jp/addfeed?arg=XXXXXXXX&user=hoge&pass=foo

	arg	- reader から渡された arg の値
	user	- RSS 受信に使用する User ID
	pass	- RSS 受信に使用するパスワード 注3

6) reader は、以後、feeder から受け取った認証情報でアクセスする
GET /rss HTTP/1.0
Host: feeder.example.com
Authorization: Basic base64('hoge:foo')

HTTP/1.0 200 OK
Content-Type: application/rss+xml

III. 今後

 今日は、サイボウズ Office の新着情報を RSS リーダーに配信するデモをさせていただきましたが、今後、サンプルアプリケーションやライブラリ等を公開していければと思います。
 ご意見をお伺いできればと思います。

注1: WSSE 認証でも OK
注2: 識別子を埋め込んだり、あるいは、作業対象の Feed URL をそのまま埋め込んだりすればいいかと
注3: reader のホスト名ごとに異なるパスワードを返し、必要に応じて revoke できるようにするといいかも

投稿者 kazuho : 2005年12月08日 15:37 このエントリーを含むはてなブックマーク このエントリーを含むはてなブックマーク

トラックバック

このエントリーのトラックバックURL:
http://labs.cybozu.co.jp/cgi-bin/mt-admin/mt-tbp.cgi/278

このリストは、次のエントリーを参照しています: RSS Feed と認証:

» フィードビジネス・カンファレンス リンク集 from Kazuho@Cybozu Labs
 昨日12月8日に行われた、フィードビジネスカンファレンス (FBS) のリンク... [続きを読む]

トラックバック時刻: 2005年12月09日 12:18

» サイボウス・ラボではRSSの拡張を研究中 from FeedCook Blog
先日開催されたフィードビジネス・カンファレンス-Web2.0時代における、Feedビジネスとテクノロジー-でサイボウズ・ラボ株式会社 奥一穂氏がスピーチさ... [続きを読む]

トラックバック時刻: 2005年12月09日 14:05

» FBSカンファレンス(バイキーワード、バイタグ) from fine
遅くなりましたが、FBSカンファレンスの感想です。 FBSカンファレンスは、w [続きを読む]

トラックバック時刻: 2005年12月18日 12:54

» サイボウス・ラボではRSSの拡張を研究中 from FeedCook Blog
先日開催されたフィードビジネス・カンファレンス-Web2.0時代における、Feedビジネスとテクノロジー-でサイボウズ・ラボ株式会社 奥一穂氏がスピーチさ... [続きを読む]

トラックバック時刻: 2006年01月04日 17:32

» [WEB]RSS Feedの拡張 from zelaznyの日記
http://labs.cybozu.co.jp/blog/kazuho/archives/2005/12/rss_personalization.ph... [続きを読む]

トラックバック時刻: 2006年07月04日 13:31

» そう言えばRSSの認証ってどうなったんだろう from EUREKA
Kazuho@Cybozu Labs: RSS Feed と認証 Googleで「RSS 認証」と検索かけると色々出てくるわけですが、先述のデジタルフォト... [続きを読む]

トラックバック時刻: 2007年11月16日 22:17