2009/05/15
■[OpenID][Google]Google released an upgrade to their OpenID Provider to support the draft OpenID User Interface Extension
今朝、GoogleのOpenIDについてのニュースが入ってきました。
- The Google Code Blog: Google OpenID API - taking the next steps
- Google and JanRain Release Support for the OpenID User Interface Extension | OpenID
- David Recordon's (Old) Blog - OpenID User Experience Continues to Improve!
簡単に言うと、「GoogleがOpenID User Interface Extensionに対応した」ということです。JanRainの話はおいておきます。
何ができる拡張かというと、次の2点です。
- RPがOPに対して、「ポップアップによる認証要求を送ること」を指定できる
- RPがOPに対して、「Userが認証時に利用する言語」を指定できる
実際の動作を見てみましょう。
uservoice.comのログイン画面を開いてみます。
UserVoice: Error 404 - Not found :(
OpenIDというか、OAuthも含めたIDプロバイダセレクタ的なものが左の方にあります。
今回はもちろんGoogleをクリックします。
ポップアップウィンドウが立ち上がり、小さなログイン画面が表示されました。
ここでEmail/PWを入力します。
URLバーが見えるので、フィッシングではないことが確認できますね。
OpenIDの確認画面が表示されました。
Email,国,言語を渡すと言っているのでAXなどの拡張が使われているようです。
「許可」するとポップアップウィンドウが閉じ、もとのページが更新されます。
UXの説明は以上です。
技術的に、UI Extensionをどのように導入しているかを説明します。
まず、GoogleにIndirect Communicationで渡される認証要求の内容を見てみましょう。
どんな拡張を使ってるのかをnamespaceで調べます。
&openid.ns.ax=http%3A%2F%2Fopenid.net%2Fsrv%2Fax%2F1.0 【1】
&openid.ns.sreg=http%3A%2F%2Fopenid.net%2Fextensions%2Fsreg%2F1.1【2】
&openid.ns.ui=http%3A%2F%2Fspecs.openid.net%2Fextensions%2Fui%2F1.0【3】
3つ使われています。
- Final: OpenID Attribute Exchange 1.0 - Final
- OpenID Simple Registration Extension 1.1 - Draft 1
- Implementers’ Draft: OpenID User Interface Extension 1.0 - DRAFT 0.4
【3】が今回のメインのUser Interface Extensionです。
それでは、この拡張に関連するパラメータはどうなっているのでしょうか。
openid.ui.mode=popup
このパラメータにより、uservoice.comはGoogleに対して「ポップアップで画面開くよ」と伝えています。
どうでしょうか。認証要求は非常にシンプルです。
あ、そういえば、Discoveryの結果を確認するのを忘れていました。
$ curl "https://www.google.com/accounts/o8/id"
<xrds:XRDS xmlns:xrds="xri://$xrds" xmlns="xri://$xrd*($v*2.0)">
<XRD>
<Service priority="0">
<Type>http://specs.openid.net/auth/2.0/server</Type>
<Type>http://openid.net/srv/ax/1.0</Type>
<URI>https://www.google.com/accounts/o8/ud</URI>
</Service>
</XRD>
</xrds:XRDS>
Specに照らし合わせると、GoogleはUI Extensionに対応することを明示する以下の定義をすべきです。
<Type>http://specs.openid.net/extensions/ui/1.0</Type>
ということで、Googleは少しずつ拡張の実装を進めていますね。
非常に興味深いです。
最後に、「OpenID User Interface Extension」については、以前書いたこのへんの記事も見てもらえればいいかなと思います。
- 9 http://reader.livedoor.com/reader/
- 7 http://twitter.com/ritou
- 5 http://delicious.com/save?url=http://d.hatena.ne.jp/ritou/20090515/1242412261&title=Google released an upgrade to their OpenID Provider to support the draft OpenID User Interface Extension - r-weblife&v=5&j
- 4 http://bookmarks.yahoo.co.jp/bookmarklet/showpopup?t=Google released an upgrade to their OpenID Provider to support the draft OpenID User Interface Extension - r-weblife&u=http://d.hatena.ne.jp/ritou/20090515/
- 2 http://blogs.yahoo.co.jp/kuro_ryo1012
- 2 http://d.hatena.ne.jp/
- 2 http://www.google.co.jp/search?hl=ja&q=OAuth+Hyblid&btnG=検索&lr=
- 2 http://www.google.com/reader/view/?tab=my
- 1 http://72.14.235.132/search?q=cache:KqWmWIw0JNAJ:d.hatena.ne.jp/ritou/20090417/1239985582+Twitter+ログイン状態&cd=3&hl=ja&ct=clnk&gl=jp&lr=lang_ja
- 1 http://b.hatena.ne.jp/entry/13545257/1241625276



