-
Notifications
You must be signed in to change notification settings - Fork 4
/
384.txt
44 lines (36 loc) · 2.69 KB
/
384.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
* 仕様書
[REFS[
- [4] [CITE@en[RFC 5849 - The OAuth 1.0 Protocol]] ([TIME[2014-12-28 14:19:21 +09:00]] 版) <http://tools.ietf.org/html/rfc5849#section-2.3>
- [1] [CITE@en[RFC 5849 - The OAuth 1.0 Protocol]] ([TIME[2014-12-28 14:19:21 +09:00]] 版) <http://tools.ietf.org/html/rfc5849#section-3>
-- [6] [CITE@en[RFC 5849 - The OAuth 1.0 Protocol]] ([TIME[2014-12-28 14:19:21 +09:00]] 版) <http://tools.ietf.org/html/rfc5849#section-3.1>
]REFS]
* 意味
[2] [RUBYB[[[認証された要求]]]@en[authenticated request]]には、 [[クライアント]]を表す[[クライアントcredentials]]と、
[[資源所有者]]を表す[[トークンcredentials]]を含めます [SRC[>>1]]。
[3] [[認証された要求]]の作成に当たっては[[鯖]]の設定に関する事前の知識が必要です。
[[クライアント]]が[[鯖]]の要求する設定をどう[[発見]]するかは [[OAuth]]
仕様の範囲外とされています。 [SRC[>>1]]
[5] [[トークン要求]]では、[[クライアント]]が[[鯖]]に[[認証された要求]]を送信しますが、
この時は[[クライアントcredentials]]と共に ([[トークンcredentials]]のかわりに)
[[一時credentials]]を使います [SRC[>>4]]。
* 作成
[7] [[認証された要求]]は、[[HTTP要求]]に次のように[[引数]]を加えて作成します [SRC[>>6]]。
[FIG(steps)[
= [8] 次の[[引数]]を用意します。
=- [9] [CODE(HTTP)@en[[[oauth_consumer_key]]]] は、[[クライアントcredentials]]の[[識別子]]とします。
=- [10] [CODE(HTTP)@en[[[oauth_token]]]] は、[[資源所有者]]を関連付けるための[[トークン]]の値とします。
[[資源所有者]]と関連付けない場合には、省略して構いません。
=- [11] [CODE(HTTP)@en[[[oauth_signature_method]]]] は、
[[クライアント]]が使う[[署名方式]]の名前とします。
=- [12] [CODE(HTTP)@en[[[oauth_timestamp]]]] は、[[タイムスタンプ]]とします。
ただし [CODE(HTTP)@en[[[oauth_signature_method]]=[[PLAINTEXT]]]] なら、
省略して構いません。
=- [13] [CODE(HTTP)@en[[[oauth_nonce]]]] は、[[nonce]] 値とします。
ただし [CODE(HTTP)@en[[[oauth_signature_method]]=[[PLAINTEXT]]]] なら、
省略して構いません。
=- [14] [CODE(HTTP)@en[[[oauth_version]]]] は、[CODE(HTTP)[[[1.0]]]] とします。
省略しても構いません。
= [15] 用意した[[引数]]を、[[転送方式]]のいずれかにより[[要求]]に追加します。
= [16] [CODE(HTTP)@en[[[oauth_signature]]]] の値を計算します。
= [17] [CODE(HTTP)@en[[[oauth_signature]]]] [[引数]]を >>15 で選択した[[転送方式]]により[[要求]]に追加します。
]FIG]