OAuth の超簡潔まとめ
- /_user/ にPOSTすることでユーザーの登録が可能
- /_oauth/request_token に1.で作成したユーザーとConsumerキーの組でsignされたパラメータを送ることでトークンの発行が可能。
- /_session に 2. で取得したトークンを送りつけるとユーザー名とロール情報を取得できる。
ここまでは、test_suite を通じてわかった。
この雰囲気だと JavaScript = Consumer, CouchDB HTTPD = Service Provider なのだけれど、「Consumer を Service Provider に登録し、Service ProviderがConsumer Secretを発行する」という最初の手順が省略されている。また、Consumerを信頼するかどうかをService Providerがユーザーに確認するステップもない。
うーん、なんだこれ。単なるトークンを使った認証・認可にか見えない。Consumer が Service Provider から提供される JavaScript なのだからいいっちゃいいんだけれど。
もうちょっとわかりやすいシナリオでアプリケーションを書いてみないとなんともいえないですね。