Hatena::ブログ(Diary)

大阪で働くソーシャルゲームエンジニア ダイアリー このページをアンテナに追加 RSSフィード

2008-02-20 YahooIDでOpenID2.0ログインのサンプルコードを動かしてみた このエントリーを含むブックマーク このエントリーのブックマークコメント

YahooOpenIDに対応しました。

とりあえずサンプルプログラムを組もうと思いましたが、一から作ると仕様を理解するだけでも時間がかかりそうなので、ライブラリを利用する事にしました。


今回は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.

あれ?ログイン出来ない、、


ここで一回はまりました。


ライブラリを追ってみた所、YahooOpenIDはhttpsを利用するため、PHPにOpenSSL関数インストールされていないと認証出来ない事が発覚。


早速PHPにOpenSSL関数を追加。

./configureに--with-opensslを追加しました。


再度、STEP3まで実行。

Yahooリダイレクトされ、無事認証が成功しました。

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

Connection: close