技術系のお話は全部「研究」カテゴリに入れちまおう。
思うところがあってOpenIDについて調べてみた。
ついでにOpenIDをウェブアプリの認証として利用しようと思うのだけど、これが一筋縄ではいかなそう……
そも、OpenIDとは
サイトを越えて使用できる認証システム。通常はサイトごとにアカウントを作成しIDを取得する必要があるが、OpenID対応サイトであればどのサイトでも1つのOpenIDでアカウントを利用できる
とWikipediaにある。
この説明だけだといまいちピンとこない……。具体的な例を挙げよう。
多分、多くの人はmixiやウェブメールなんかで「ID」と「パスワード」を入力する機会が多くなってきていると思う。
それぞれのサービス毎に様々なID……様々なパスワード……。
普段はパソコンに覚えさせてるけど、忘れちゃうとかなり厄介……。なんて状況に陥っていると思う。
OpenIDとはこのIDを一つにまとめてしまおうというものだ。簡単に言うと。
たとえば、OpenID.ne.jpというサービスがある。まずココに登録すると、なんかURLを発行してもらえる。
このURLがIDとなる。
利用者は、OpenID.ne.jpにログインすると、他のサイトではこのURLを入力すればログイン完了となる。
うん、この説明でも分かり難いなぁ。
察しの良い方なら気づいたかもしれないけれど、これを使うと、パスワードの入力がOpenID.ne.jpでの1回だけでOKになるのだ。
つまり、OpenIDにだけパスワードを教えておけば、他のサービスにパスワードを教える必要がなくなるのである!
これって画期的。IDは一つ。パスワードは一つ。
OpenID.ne.jpさえ信用していればパスワードが漏れる場所が無い。(漏れたとしたらOpenID.ne.jpから漏れたってことになる)
なんとなーーくセキュアな気がする!
さぁて、これを実際に自作のウェブアプリに組み込もうと思うとLivedoor Authやはてな認証APIがあるわけなのだが、今日はもう眠いのでこの続きはまた次回。