l'essentiel est invisible pour les yeux

Thursday, February 07, 2008

OpendID 2.0 でのdelegateの指定

OpenID 2.xでは、delegationの指定方法が変更されています。

OpenID Authentication 2.0 - Final

A LINK element MUST be included with attributes "rel" set to "openid2.provider" and "href" set to an OP Endpoint URL

A LINK element MAY be included with attributes "rel" set to "openid2.local_id" and "href" set to the end user's OP-Local Identifier



<link rel="openid2.provider" href="http://www.myopenid.com/server"/>
<link rel="openid2.local_id" href="http://rakuto.myopenid.com/"/>


それぞれ、OpenID 1.xのopenid.serverにopenid2.providerが対応、opeid.delegateにopenid2.local_idに対応しています。こちらを指定しない際は、OpenID1.xが使用される事になります。後方互換性があるはずなのですが、ruby-openid2.0.3では、上記のように指定しないと、ログインは成功するが、nickname, emailといったフィールドが返されませんでした。ruby-openidでログインできない際は、試してみて下さい。

restful_open_id_authenticationは、OpenID1.xの対応から開発が止まっているので、2.x対応版はこちらからインストールできます。
s21g::Hello, world! - restful_open_id_authentication_redux