request token

一時credentials (OAuth)

[11] 一時 (temporary) credentialsは、 OAuth 1.0認可の過程においてクライアントからのアクセス要求を識別するものです。 一時 (temporary) credentials要求 (request) は、 クライアントから一時credentialsを取得するための HTTP要求です。

仕様書

用語

[2] temporary credentials のことを元は request token および request token secret と呼んでいました >>1

一時 credentials

[5] temporary credentials は、認可の間クライアントからのアクセス要求を識別するために使います >>3temporary credentials は、識別子 (identifier) 共有秘密 (shared-secret) の2つの値の組によって表されます。

[24] 2つの値の値域や長さは、仕様上は制限がありません。多くの場合は十数文字程度の ASCII文字で、あまり記号は含まない方が安全です。 (しかしクライアントは任意の値を受け入れる必要があります。)

[4] temporary credentials は、temporary credentials要求によってからクライアントに発行されます。

[6] temporary credentials は、資源所有者認可においてアクセス要求を識別するために使います。

[7] temporary credentials は、トークン要求においてクライアントからtoken credentialsを得るために使います。

[8] は、token credentialsを得るために temporary credentials が使われた後、temporary credentials を取り消し (revoke) しなければなりません >>3

[9] temporary credentials寿命は限定するべきです >>3

一時 credentials 要求

[12] クライアントは、 一時credentials要求 (temporary credentials request) によってから一時credentialsを得ることができます。

[14] クライアントは、から何らかの方法で広告されたエンドポイントURL要求URLとして使います >>10

以降で示す通り、引数が追加されることもあります。

[18] 保安通信路を使うことを要求しなければなりません >>10

[19] HTTP応答平文credentials が含まれることになるからです >>10

[13] クライアントは、要求メソッドとして POST を使います。 >>10

[25] 一時credentials要求は、認証された要求です >>10

[15] クライアントoauth_callback 引数を指定しなければなりません >>10

[35] クライアントoauth_body_hash 引数を指定するべきではありません >>34

[17] クライアントは、クライアントcredentialsのみ使って認証します。 トークンcredentialsは使いません。 空の oauth_token 引数は省略しても構いません。 token secret の値は空文字列としなければなりません>>10

[18] oauth_token は空文字列または省略のどちらでも良いようですが、 仕様上不明瞭であり、省略しか認めないサーバーもあるようです。

[16] はその他の引数を求めても構いません。 >>10

[20] 要求検証 (verify) し、 妥当であるなら一時credentials (識別子共有秘密) を応答しなければなりません >>10

[21] 一時credentialsを送る場合、状態符号200 で、 MIME型application/x-www-form-urlencoded とします >>10。 そこには、次の引数を含めなければなりません >>10

payload body (application/x-www-form-urlencoded)

oauth_token
一時credentials識別子 (identifier) とします。
oauth_token_secret
一時credentials共有秘密 (shared-secret) とします。
oauth_callback_confirmed
true とします。

[22] oauth_callback_confirmed は、 OAuth 1.0 の最初の版と区別するためのものです。
[23] RFC 5849 には、「token と名前に含まれるがトークンではない」 との注記があります。元々「要求トークン」と呼ばれていた (>>2) のに IETF が後から用語だけ変えてしまったせいでおかしなことになっています。
[195] Twitterapplication/x-www-form-urlencoded を使いながらも、 Content-Type: には text/html を指定します。このためクライアントContent-Type: ヘッダーを無視しなければなりません。

[31] OAuth 1.0 本体仕様としてはエラー時の応答については規定していません。 OAuth Problem Reporting Extension は報告方法を規定しており、 実装によってはこれに対応しています。

歴史

[36] OAuth 2.0 では一時credentialsに相当するものはなくなっています。