2008-02-20 YahooIDでOpenID2.0ログインのサンプルコードを動かしてみた

とりあえずサンプルプログラムを組もうと思いましたが、一から作ると仕様を理解するだけでも時間がかかりそうなので、ライブラリを利用する事にしました。
今回はPHP OpenID Libraryというライブラリを使用しました。
ライブラリには、サンプルプログラムもあったので、これを動かしてみたいと思います。
STEP 1.インストール
特に難しい設定は必要ありません。
cd /var/www wget http://openidenabled.com/files/php-openid/packages/php-openid-2.0.0.tar.bz2 tar jxvf php-openid-2.0.0.tar.bz2
STEP 2.解凍したページにアクセス。
http://example.com/php-openid-2.0.0/examples/consumer/

STEP 3.Identity URLを入力
「yahoo.co.jp」と入力しVerifyボタンをクリック


「Authentication error; not a valid OpenID.」
あれ?ログイン出来ない、、
ここで一回はまりました。
ライブラリを追ってみた所、YahooのOpenIDはhttpsを利用するため、PHPにOpenSSL関数がインストールされていないと認証出来ない事が発覚。
./configureに--with-opensslを追加しました。
再度、STEP3まで実行。


認証後は、ライブラリにYahooから受け取ったOpenIDが格納されているので、それを使って処理を進めていくという事になります。







