/
450.txt
87 lines (70 loc) · 5.31 KB
/
450.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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
* 仕様書
[REFS[
- [1] [CITE@en[RFC 6749 - The OAuth 2.0 Authorization Framework]] ([TIME[2014-12-15 14:15:35 +09:00]] 版) <http://tools.ietf.org/html/rfc6749#section-4.1.2.1>
- [19] [CITE@en[RFC 6749 - The OAuth 2.0 Authorization Framework]] ([TIME[2014-12-15 14:15:35 +09:00]] 版) <http://tools.ietf.org/html/rfc6749#section-4.2.2.1>
- [20] [CITE@en[RFC 6749 - The OAuth 2.0 Authorization Framework]] ([TIME[2014-12-15 14:15:35 +09:00]] 版) <http://tools.ietf.org/html/rfc6749#section-5.2>
]REFS]
* [CODE(URI)@en[error]] 引数
[3] [DFN[[CODE(URI)@en[[[error]]]]]] [[引数]]は、[[誤り符号]]を表します [SRC[>>1, >>19, >>20]]。
[4] 次のいずれかとされています。
[FIG(list)[
:[5] [CODE(URI)@en[[[invalid_request]]]]:
必須の[[引数]]が指定されなかったか、
[[非妥当]]な[[引数]]値が指定されたか、
[[引数]]が複数回指定されたか、
その他不正があったことを表します。 [SRC[>>1, >>19, >>20]]
:[21] [CODE(URI)@en[[[invalid_client]]]]:
[[クライアント認証]]が失敗したことを表します。
([[状態符号]] [CODE(HTTP)[[[401]]]] を使うことができます。[[トークンエンドポイント]]参照。)
[SRC[>>20]]
:[22] [CODE(URI)@en[[[invalid_grant]]]]:
指定された[[認可承諾]] ([[認可符号]]や[[資源所有者credentials]]など) や[[更新トークン]]が[[非妥当]]、
[[満期]]、
取り消し ([[revoke]]) 済み、
[[リダイレクトURL]]が一致しない、
あるいは他の[[クライアント]]に向けたものであることを表します。 [SRC[>>20]]
:[6] [CODE(URI)@en[[[unauthorized_client]]]]:
[[クライアント]]が[[認可符号]]または[[アクセストークン]]を要求することを[[認可]]されていない [SRC[>>1, >>19]]、
あるいは当該[[承諾型]]を使うことを認められていない [SRC[>>20]] ことを表します。
:[23] [CODE(URI)@en[[[unsupported_grant_type]]]]:
[[認可鯖]]が指定された[[承諾型]]に対応していないことを表します [SRC[>>20]]。
:[7] [CODE(URI)@en[[[access_denied]]]]:
[[資源所有者]]または[[認可鯖]]が要求を拒絶したことを表します。 [SRC[>>1, >>19]]
:[8] [CODE(URI)@en[[[unsupported_response_type]]]]:
[[認可鯖]]が[[認可符号]]または[[アクセストークン]]の取得に対応していないことを表します。 [SRC[>>1, >>19]]
:[9] [CODE(URI)@en[[[invalid_scope]]]]:
要求された[[適用範囲]]が[[非妥当]]か、未知か、不正であることを表します。 [SRC[>>1, >>19, >>20]]
:[10] [CODE(URI)@en[[[server_error]]]]:
[[認可鯖]]が未知の状況により要求を満足できないことを表します。 [[HTTP]] [CODE(HTTP)[[[500]]]]
[[状態符号]]に相当します。 [SRC[>>1, >>19]]
:[11] [CODE(URI)@en[[[temporarily_unavailable]]]]:
[[認可鯖]]が一時的な過負荷やメンテナンスのため要求を処理できないことを表します。 [[HTTP]]
[CODE(HTTP)[[[503]]]] [[状態符号]]に相当します。 [SRC[>>1, >>19]]
]FIG]
[12] [CODE(char)[[[U+0020]]]] を含み、 [CODE(char)[[[U+0022]]]] と [CODE(char)[[[U+005C]]]]
を含まない[[印字可能ASCII文字]]しか含んでは[['''なりません''']] [SRC[>>1, >>19, >>20]]。
;; [13] >>4 以外の値を指定することを暗に認めているとも解釈できますが、意図は定かではありません。
* [CODE(URI)@en[error_description]] 引数
[14] [DFN[[CODE(URI)@en[[[error_description]]]]]] [[引数]]は、
[[人間可読]]の追加情報の文章で、
[[クライアント]]の開発者が[[誤り]]を理解することを助けるために使うものです [SRC[>>1, >>19, >>20]]。
[15] [CODE(char)[[[U+0020]]]] を含み、 [CODE(char)[[[U+0022]]]] と [CODE(char)[[[U+005C]]]]
を含まない[[印字可能ASCII文字]]しか含んでは[['''なりません''']] [SRC[>>1, >>19, >>20]]。
* [CODE(URI)@en[error_uri]] 引数
[16] [DFN[[CODE(URI)@en[[[error_uri]]]]]] [[引数]]は、
[[誤り]]についての[[人間可読]]の [[Webページ]]を表す [[URL]] で、
[[クライアント]]の開発者に[[誤り]]についての追加情報を示すために使うものです [SRC[>>1, >>19, >>20]]。
[18] 値は [[RFC 3986]] [[URI-reference]] でなければ[['''なりません''']] [SRC[>>1, >>19, >>20]]。
[17] [CODE(char)[[[U+0020]]]] を含み、 [CODE(char)[[[U+0022]]]] と [CODE(char)[[[U+005C]]]]
を含まない[[印字可能ASCII文字]]しか含んでは[['''なりません''']] [SRC[>>1, >>19, >>20]]。
* 文脈
[2] [[認可エンドポイント]]からの[[リダイレクト]]によって[[誤り]]を通知する場合、
[CODE(URI)@en[[[error]]]] [[引数]]を指定しなければなりません。
また [CODE(URI)@en[[[error_description]]]] [[引数]]と
[CODE(URI)@en[[[error_uri]]]] [[引数]]を指定できます。 [SRC[>>1, >>19]]
;; [[URL query]] に指定する場合 [SRC[>>1]] と[[素片識別子]]に指定する場合 [SRC[>>19]]
があります。
[24] [[トークンエンドポイント]]からの [[JSON]] [[応答]]によって[[誤り]]を通知する場合、
[CODE(URI)@en[[[error]]]] [[引数]]を指定しなければなりません。
また [CODE(URI)@en[[[error_description]]]] [[引数]]と
[CODE(URI)@en[[[error_uri]]]] [[引数]]を指定できます。 [SRC[>>20]]