2008年02月02日

OpenID2.0に対応したPerlモジュール?

Posted by nene2001 at 18:45 / Tag(Edit): perl openid / 2 Comments: Post / View / 0 TrackBack / Google Maps このエントリーを含むはてなブックマーク
YahooのOpenIDについての周知 -辛辣インターフェース評議会-

発行されるIDが長くて覚えられねーとか言ってる人がいるんだけど、そもそも人間が覚えるものではない。
OpenID 2.0だとOpenIDのログインフォームにyahoo.comとかyahoo.co.jpと入れるだけでログインできる。

すげー。
アイデンティティ飲み会とか行ってたくせに全然知らんかった。

で、それならと、スクリプトキディの私としては、新しいプロトコルを勉強するより先に、早速OpenID2.0対応のモジュールを探してみたわけなのですが、PHP、Python、Rubyならここにあるみたいなのだけど、Perl版はない。
Google Codeにopenid4perlというのがあるみたいだけど、最終更新が1年以上前なので、最新の仕様で動くのかどうかよく判らない。

色々探してたら、SixApartの中の人が、CPANにも上がっているNet::OpenID::Consumerを、branch切ってOpenID2.0対応させてるみたい。
見つけた情報元(検索に引っ掛かったけど、忘れた)では、まだ最後のとこでうまくいってない、みたいな感じで書いてあったけど、DLしてむりやりCatalyst::Plugin::Authentication::Credential::OpenIDと連携させてみた。

そしたら、OpenID1.1までのURL型IDを入れるはずのテキストボックスに、「yahoo.co.jp」みたいなIdPのアドレスを入れてやると、flatladderと同じ感じで、ちゃんとYahoo JapanのOpenID認証用ID/PW認証ページが表示された。
で、その後OpenIDをテストページに通知してよいかの確認ページを経て、テストページに遷移。
が、そこでエラー。

確かめてみると、「bogus_delegation」というエラーが出ており、調べてみると 、Net::OpenID::Consumerの540行目からのところで、

# if openid.delegate was used, check that it was done correctly
if ($a_ident ne $real_ident) {
    my $delegate = $claimed_identity->delegated_url;
    return $self->_fail("bogus_delegation") unless $delegate eq $a_ident;
    $self->_debug("verified_identity: verified delegate $delegate for $real_ident");
}

みたいな感じで、$a_ident(IdPからの、openid.identityとしての戻り値)と$real_ident(よく判らないが、OpenID1.1ではoic.identityとしての戻り値、OpenID2.0ではopenid.claimed_idとしての戻り値を入れているみたい)の値が異なればopenid.delegateの処理がおかしかったとして扱っているみたい。
で、openid.claimed_idが存在しないので空文字列になっており、絶対ここでひっかかるようになってたので、試しにここだけコメントアウトしてみると...動いた。

普通にyahoo.co.jpと入れてやれば、最終的にYahoo Japan発行のOpenID2.0 IDが受け取れるようになった。

実際には、上記コメントアウトした部分はOpenID1.1では必須な処理なのだろうと思うので、導入するならコメントアウトではなくプロトコルバージョンで分岐するべきなのでしょうし、というかそもそもOpenID2.0でも必要な処理なのかもしれません(現状コードでは動かないだけで)。
また、動作はしているものの、いくつかの変な点も見つかります。

  • flatladderでのページ遷移のシーケンスを追っていると、yahoo.co.jp等と入れた後ID認証のページが表示されるまでの間、flatladderとYahooの間を何度かリダイレクトしているようなのだけど、このテストコードではリダイレクトは1回だけしか行われない
  • テストページからYahooへ遷移し、ユーザがID入力を行っている間に、裏でYahooサーバからテストページに対し、クエリストリングも何もつかないただのGETリクエストが来ており、エラーが出ている

といった変な?ところがあるので、正常に動いているのかどうかはよく判りません。
私は中身全然判ってないので、一応上記で動いたよというレポートだけで、これで動かしても問題がないのかどうかは全く判断つきませんので、自己責任でよろしくお願いします。

Related query words in Google & Yahoo
Related Books from Amazon
Trackback to this entry
TrackBack URL :
Trackbacks
トラックバックはありません。
Comments

【週間新潮】最高裁を無視する小平市の在日韓国・朝鮮人1万円支給…「払ってないのに年金をくれ」の音頭を取る公明党
http://mamono.2ch.net/test/read.cgi/newsplus/1201793882/


神戸では只で朝鮮人様に3万もプレゼントしています。
他の200以上もの自治体が、同じ様に朝鮮人様に年金をプレゼントしています。


川崎では、朝鮮人の為に使う費用が、1億以上にもなるそうです。


日本の年金未加入のお年寄りはスルーで、年金未加入の朝鮮人(外国人)には
日本の大切なお金をプレゼントするって・・・・・・。


日本人のお金を朝鮮人(外国人)にプレゼントするのは賛成ですか??


この事実を、家族や知り合いに広めましょう。


コピペお願いします。

Posted by: nono at 2008年02月05日 09:46


dat落ちしてるみたいだから、ここを見てね^^
http://2se.dyndns.org/test/readc.cgi/mamono.2ch.net_newsplus_1201793882/

ただで貰えるなんて羨ましいなぁ。
それで日本人のお年寄りは餓死かぁ。

Posted by: のの at 2008年02月05日 09:50
Post a comment












Remember personal info? 
2008年02月
Su Mo Tu We Th Fr Sa
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29  

About Me

Navigation

Search
Google
Web
kokogiko.net
Archives
Recent Entries
Recent Comments
Recent Trackbacks
すこし先のARに必要な方向性3つ(ここギコ!)
GPS高度、ジオイド高、標高の関係
すこし先のARに必要な方向性3つ(ここギコ!)
可視光通信って自位置特定にも使えるんじゃないか
考えるべきは沖縄米軍基地問題の本質!(ようこそイサオプロダクトワールドへisao-pw)
普天間基地移設が軍事的に見て県外移設はあり得ないとかの議論について
馬鹿信者の言動は確かにJSF氏に責任はないのだけれど、良識に訴えたい(ここギコ!)
京都外国人排斥カウンターデモの「反日上等」「日の丸ウンコ」とかについて
馬鹿信者の言動は確かにJSF氏に責任はないのだけれど、良識に訴えたい(ここギコ!)
三度、在特会カウンターデモについて
馬鹿信者の言動は確かにJSF氏に責任はないのだけれど、良識に訴えたい(ここギコ!)
普天間基地移設が軍事的に見て県外移設はあり得ないとかの議論について
馬鹿信者の言動は確かにJSF氏に責任はないのだけれど、良識に訴えたい(ここギコ!)
今回のデモで「反日」「日の丸XXX」が拙いことは判りました が、であってもまだいくつか
ここは酷い誰得教育ですね(障害報告@webry)
普天間基地移設が軍事的に見て県外移設はあり得ないとかの議論について
ここは酷いポトシ銀山ですね(障害報告@webry)
GPS高度、ジオイド高、標高の関係
ここは酷いUFO調査部門ですね(障害報告@webry)
地図サービスによって行政界の描画が違う、という話
Hatena bookmarked
My Hatebu

Banners

Syndication
Powered by
Get it!!