2012-04-23

OAuthを調べる。

その昔(3ヶ月くらい前?)にSagittariusからTwitterに投稿してみようとして挫折したことがあった。理由はHMACがないから。っで、今はあるので、仕様を理解すればいけるのかなぁと思いちょっと調べてみた。

とりあえず現行のバージョンは1.0なんだけど、2.0も策定中でFacebook、mixi及びその他(忘れた)が先行採用しているらしい。2.0の方はSSLが必須になるので、サポートするのはちと厳しい。(TLSが実装できたらやることにするとして、中身を簡単に入れ替えられるように実装する必要はあるか・・・)
詳しい中身はRFC5849を見ることにして、概要をとりあえず頭に入れたい。っで下記のページが分かりやすかった。
APIアクセス権を委譲するプロトコル、OAuthを知る - @IT

署名とかの処理を除けば処理フローは割りと簡単な感じ。サーバー側を書くつもりは今のところないので、必要な登場人物としては、Consumer(RFCではClientになっている)だけだろう。流れとしては、
  1. リクエストトークンの取得
  2. ユーザー認証
上記2つは事前に行う必要がある。コンソールアプリだと、リダイレクトが面倒だ。どうしよう?
  1. アクセストークンの発行
  2. APIを叩く
これらはまぁ問題ないだろう。ユーザー認証で取得できた情報をどこに格納するかとかもそれなりに問題か。暗号化するとかしないとか考えた方がいいだろうか?

しかし、OAuthと書いてオースとは読めない自分。どうしてもオーオースになる。

No comments:

Post a Comment