Archive for the ‘OpenID’ Category

 

mixi openid : RPからhttps://mixi.jp/へのSSL接続に失敗します。

7月 15th, 2011

http://developer.mixi.co.jp/openid/faq/ RPからhttps://mixi.jp/へのSSL接続に失敗します。どんな対策が必要ですか? に従ってサーバーの証明書を更新します。 前もやったんだけど、メモってなかったのかな http://insilico.jognote.com/blog/2008/08/13/curl-%E3%81%AB-https-%E3%81%A7%E3%82%A2%E3%82%AF%E3%82%BB%E3%82%B9%E3%81%A7%E3%81%8D%E3%82%8B%E3%82%88%E3%81%86%E3%81%AB%E8%A8%BC%E6%98%8E%E6%9B%B8%E3%82%92%E8%BF%BD%E5%8A%A0%E3%81%99%E3%82%8B/ あれ?入ってた。

Read full article | コメントは受け付けていません。

Open ID : associate type ASSOC_TYPE_HMAC_SHA1 これも

1月 23rd, 2011

ちょとこのversionと暗号化の組み合わせは何でしょう。 まぁライブラリが正解とは言えないので良いのです。 修正しました。やっとmixiでログイン成功~ if (OpenID::$versionMap[$version] == OpenID::NS_2_0) { $this->message->set(‘openid.ns’, OpenID::NS_2_0); if(preg_match(‘/mixi.jp/’,$this->opEndpointURL)){ $this->message->set(‘openid.assoc_type’, self::ASSOC_TYPE_HMAC_SHA1); $this->message->set(‘openid.session_type’, self::SESSION_TYPE_DH_SHA1); }else{ $this->message->set(‘openid.assoc_type’, self::ASSOC_TYPE_HMAC_SHA256); $this->message->set(‘openid.session_type’, self::SESSION_TYPE_DH_SHA256); }

Read full article | コメントは受け付けていません。

OpenID : session_type DH_SHA1 or DH-SHA256 ? mixi.jpの罠 ?

1月 22nd, 2011

PearのOpenIDライブラリを使っているのですが、 mixi.jp の OpenIDを利用したところ以下のエラーが返された。 “Missing dh_server_public parameter in association response” https://mixi.jp/openid_server.pl データは取得出来ていたけど、dh_server_publicがかえってこなかった。。。 ようやく原因がわかりました。。。 session_typeには、 no-encryption DH-SHA1 DH-SHA256 の3つがあるのですが、sslのときは、当然利用が必要です。 mixi.jpはhttps://につなぎに行くのですが versionが http://specs.openid.net/auth/2.0/server のため OpenID_Association_Request のconstruct内で versionから session_type = DH-SHA256 と設定されました。 残念ながら mixi.jpはDH-SHA256では、 dh_server_public enc_mac_key が返されませんでした ; o ; 仕方ないのでmixiのときは、 DH_SHA1 にして無事認証完了^-^; // Set defaults $this->message->set(‘openid.mode’, OpenID::MODE_ASSOCIATE); if (OpenID::$versionMap[$version] == OpenID::NS_2_0) { $this->message->set(‘openid.ns’, OpenID::NS_2_0); $this->message->set(‘openid.assoc_type’, self::ASSOC_TYPE_HMAC_SHA256); +++ if(preg_match(‘/mixi.jp/’,$this->opEndpointURL)){ […]

Read full article | コメントは受け付けていません。

Yahoo OpenID Attribute Exchange をPHPで利用してみる!

7月 26th, 2010

まずは↓この通りにopenidを使ってみてください。 http://techblog.yahoo.co.jp/web/openid/10yahooopenid_rp/ ↓次に、こちらPHPじゃないですが、画面遷移は同じです! Yahoo OpenID AX Attribute Exchange! http://techblog.yahoo.co.jp/web/openid/openid_axyahoo/ でphpは何を変えるかというと try_auth.php(リクエスト用を修正です!) require_once “Auth/OpenID/AX.php”; でAXも利用可能に。 さらに function run()内の $auth_request = $consumer->begin($openid); の下あたりに AXを追加! 画像とfriendlyをnicknameとしてとってみる。 $ax_request = new Auth_OpenID_AX_FetchRequest(); $ax_request->add( Auth_OpenID_AX_AttrInfo::make(‘http://axschema.org/media/image/default’, 1,true,’image’)); $ax_request->add( Auth_OpenID_AX_AttrInfo::make(‘http://axschema.org/namePerson/friendly’ ,1,true,’nickname’)); で早速Yahooへログイン!同じく try_auth.phpからYahooへリダイレクトされる finish_auth.phpへ返されるパラメータに ["openid_ax_value_image"]=> string(54) “https://s.yimg.jp/images/login/openid/img/01/pic90.gif” ["openid_ax_value_nickname"]=> string(12) “ヤフーのID” の2つが入ってきます。 だいたい問題ないので、次はphpのセッションを少し修正してサービスへ導入します。

Read full article | コメントは受け付けていません。