OAuth の超簡潔まとめ

  1. /_user/ にPOSTすることでユーザーの登録が可能
  2. /_oauth/request_token に1.で作成したユーザーとConsumerキーの組でsignされたパラメータを送ることでトークンの発行が可能。
  3. /_session に 2. で取得したトークンを送りつけるとユーザー名とロール情報を取得できる。

ここまでは、test_suite を通じてわかった。

この雰囲気だと JavaScript = Consumer, CouchDB HTTPD = Service Provider なのだけれど、「Consumer を Service Provider に登録し、Service ProviderがConsumer Secretを発行する」という最初の手順が省略されている。また、Consumerを信頼するかどうかをService Providerがユーザーに確認するステップもない。

うーん、なんだこれ。単なるトークンを使った認証・認可にか見えない。Consumer が Service Provider から提供される JavaScript なのだからいいっちゃいいんだけれど。

もうちょっとわかりやすいシナリオでアプリケーションを書いてみないとなんともいえないですね。