OAuthについて

追記

OAuthについては残念な気分にさせられるなあ。。。

デスクトップクライアントに関しては、OAuthはクライアントのなりすまし防止には本質的に無力であるようです。xAuth対応の某有名クライアントから簡単にconsumer key/secretが抽出できて、なりすましできました。

追記

OAuthの仕組みを勘違いしていました。consumer secretは毎API呼出ごとに必要になるので、現実的な対応としてはconsumer secretをクライアントと一緒に配布するしかないようです。


twittering-modeをそろそろOAuth対応にしなきゃと思って勉強中なのだけれど、OAuthの認証プロセスにかんしての疑問が2つ。

  1. consumer keyはオープンにしてしまってもOK。秘匿すべきは consumer secretのみである。
  2. request tokenを要求したレスポンスのoauth_tokenとoauth_token_secret自体は傍受されてしまっても大丈夫なはず

これらの理解は正しいのだろうか、ということ。1については、twittering-mode.elに埋め込んで配布するべきか否かというところに関わってくるのでかなり重要。

2については、request token取得代行するCGIを設置してconsumer secretを秘匿しようと考えているのだけれど、その際にユーザーにoauth_tokenとoauth_token_secretを教える通信路をSSLにするか否か(SSLが使えるサーバを容易すべきか否かという選択)に関わってくるのでそれなりに重要。

Twitterクライアントの作者さん、もしこれを見ていたらご意見きかせてください。