前回のOpenIDネタの続きです。
今回は、openid.delegateという仕組みについてです。
前回は、Openid.ne.jpというプロバイダ(OpenIDの発行サービス)で「http://xxxx.openid.ne.jp」というIDを取得しました。xxxx部分が自分で決められる部分ですが、自前でドメインを取得されている方や、別のURLをOpenIDにしたいという方のために、openid.delegateという仕組みがあります。
やりかたはとっても簡単です。
詳しい解説は、こちらを参照していただくとして、実際にやってみましょう。
私のOpenIDは http://mrsy.openid.ne.jp ですが、
http://mrsy.synapz.jp に変更してみます。
http://mrsy.synapz.jp/index.html に、以下の2行を記載します。
<link rel="openid.server" href="http://www.openid.ne.jp/user/auth" />
<link rel="openid.delegate" href="http://mrsy.openid.ne.jp" />
ボールドイタリック部分はご自身で取得したOpenIDのプロバイダと、OpenIDのIdentityを記載してください。たったこれだけで http://mrsy.synapz.jp が http://mrsy.openid.ne.jp の代わりになります。
では実際にsynapzドメインのIdentityが機能するかどうか検証してみましょう。
前回と同様、利用するサービスはアバウトミーにします。
ID部分にsynapzドメインのOpenIDを入力して、ログイン。
OpenID側にリダイレクトされ、ログイン催促がでました。パスワードを入力します。
おおおお、できましたね!
さて、もう前述のhtmlに埋め込むlinkタグの意味がお分かりかと思いますが、単純にOpenIDの認証サーバとIdentityの委譲先(delegate)を指定しているだけです。
delegateの利用シチュエーション
- OpenIDプロバイダで気に入ったIDが取得できなかった場合
別途簡潔なURLを準備して、本来のIdentityにdelegateします。 - 自分のblogのURLをIDにしたい場合
自分のドメインのOpenIDを使うことで、なんだか愛着が湧きますね。