Hatena::ブログ(Diary)

r-weblife RSSフィード Twitter

2009/05/15

[][]Google released an upgrade to their OpenID Provider to support the draft OpenID User Interface Extension

今朝、GoogleのOpenIDについてのニュースが入ってきました。

簡単に言うと、「GoogleがOpenID User Interface Extensionに対応した」ということです。JanRainの話はおいておきます。

何ができる拡張かというと、次の2点です。

  • RPがOPに対して、「ポップアップによる認証要求を送ること」を指定できる
  • RPがOPに対して、「Userが認証時に利用する言語」を指定できる

実際の動作を見てみましょう。

uservoice.comのログイン画面を開いてみます。

no title

f:id:ritou:20090516004348p:image:medium

OpenIDというか、OAuthも含めたIDプロバイダセレクタ的なものが左の方にあります。

今回はもちろんGoogleをクリックします。

f:id:ritou:20090516004349p:image:medium

ポップアップウィンドウが立ち上がり、小さなログイン画面が表示されました。

ここでEmail/PWを入力します。

URLバーが見えるので、フィッシングではないことが確認できますね。

f:id:ritou:20090516004350p:image:medium

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つ使われています。

  1. Final: OpenID Attribute Exchange 1.0 - Final
  2. OpenID Simple Registration Extension 1.1 - Draft 1
  3. 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」については、以前書いたこのへんの記事も見てもらえればいいかなと思います。

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証

トラックバック - http://d.hatena.ne.jp/ritou/20090515/1242412261