タンスの奥に眠ってないですか。

前のエントリへのh-yanoさんのエントリ。この中で、OpenIDを採用した場合の欠点が述べられてる。
OpenIDを採用したシステムへは、既に持っているIDで即ログインできる。このことの裏返しで、IDを一つも持っていなければまずIDを取得しなくてはいけない。これは現状、どうしようもない欠点で、先のエントリで述べられているようにOpenIDとは別の認証系を用意するくらいしか解決手段がないと思う。
しかし、ちょっと考えてみよう。こないだのY!のOpenID発行開始や、App Engineデモとして提供されたOpenID for Google AccountsによってYahoo!アカウントやGoogleアカウントもOpenIDとして使えるようになった*1
このように、手持ちの何らかのアカウントがOpenIDに化ける、という事例が今後も増え続けると容易に予想できる。だから、大半のネットユーザーはもう既にいくつかのOpenIDを持っているんじゃないか。
こういったIDを使ってもらうためには、「そのアカウントがOpenIDである」と言うことをユーザに知ってもらわなければいけない。この広報はOpenIDプロバイダがやってくれてはいるんだけど、読んでない人も多いだろうと想像できる。では他の手としてはどうすればいいか。
OpenIDを使って欲しい場面で、「こんなアカウント持ってればすぐ使えますよ」と言うことを知らせればよい。つまり、OpenIDでログインできるサービスの、ログイン画面にお知らせが載っていればいい。
現状、ウチのサービス群ではこんな風に、入力フォームの下に主なOpenIDプロバイダの紹介を載せてる。これはハードコードなので新しいのを追加したければサーバ側をいじくってやらなきゃいけない。たいした手間ではないけど。
この紹介文、共通化できないかな。
まとめサイトみたいな体裁で、次のようなOpenIDプロバイダについての情報を登録しておく。

  • 名前
  • トップのURL
  • OpenID URLの形式
  • (livedoor Authのように準備が要るなら)使うための手順
  • そのプロバイダが提供しているOpenID紹介ページへのリンク

これを外部からJSONPあたりで取れるようにしておけば、OpenIDを使ったアプリケーションから呼んで紹介文を貼り付けられる。Wikiのように誰でも書けるようにしておけば、日々生まれている新しいプロバイダにも対応しやすい。
APIまでは用意せずとも、まとめサイトとして一覧できるようになってるとそこにリンクを張っておけば良くて便利そう。現状、採用アプリケーションのまとめはおぷん: 日本語OpenID対応サービスまとめがあるけど、OpenIDプロバイダのまとめって見当たらなかった。もうあるかな?WikipediaのOpenIDのページとかにリンク集はあるから、これで十分?

*1:OpenID for Google Accountsは信頼性などの面で常用するのは拙いかも知れない。デモだし。だけどY!のは正式なサポートだから安心でしょう。