<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="5" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[5]</anchor-end> <dfn><rubyb xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><anchor>検証符号</anchor><rt xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">verification code</rt></rubyb></dfn>は、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">OAuth</anchor> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">鯖</anchor>にアクセスして<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">認可</anchor>したのとその後
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">OAuth</anchor> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">クライアント</anchor>にアクセスして完了を求めたのが同一の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">資源所有者</anchor>であることを確認するための符号です。
<dfn><code class="URI" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">oauth_verifier</anchor></code></dfn> は、<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">検証符号</anchor>を指定する<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">引数</anchor>です。</p><section><h1>仕様書</h1><refs xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><ul xmlns="http://www.w3.org/1999/xhtml"><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="20" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[20]</anchor-end> <cite xml:lang="en">RFC 5849 - The OAuth 1.0 Protocol</cite> (<time>2014-12-28 14:19:21 +09:00</time> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://tools.ietf.org/html/rfc5849#section-2">http://tools.ietf.org/html/rfc5849#section-2</anchor-external><ul><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="1" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[1]</anchor-end> <strong><cite xml:lang="en">RFC 5849 - The OAuth 1.0 Protocol</cite> (<time>2014-12-28 14:19:21 +09:00</time> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://tools.ietf.org/html/rfc5849#section-2.2">http://tools.ietf.org/html/rfc5849#section-2.2</anchor-external></strong></li><li><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="6" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[6]</anchor-end> <cite xml:lang="en">RFC 5849 - The OAuth 1.0 Protocol</cite> (<time>2014-12-28 14:19:21 +09:00</time> 版) <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://tools.ietf.org/html/rfc5849#section-2.3">http://tools.ietf.org/html/rfc5849#section-2.3</anchor-external></li></ul></li></ul></refs></section><section><h1>検証符号</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="4" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[4]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">資源所有者認可</anchor>において<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">資源所有者</anchor>が<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">認可</anchor>することとした場合には、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">鯖</anchor>は<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">検証符号</anchor>を生成しなければなりません。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="16" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[16]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">検証符号</anchor>は<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">鯖</anchor>が生成した推測できない値です。
この値は<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">資源所有者</anchor>を経由して<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">クライアント</anchor>に引き渡し、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">トークンcredentials要求</anchor>で使うものです。
この<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">検証符号</anchor>は、アクセスを認めた<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">資源所有者</anchor>と<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">クライアント</anchor>に処理完了を求めた<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">資源所有者</anchor>が同一であることを確かめるためのものです。
<src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="1" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;1</anchor-internal></src></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="2" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[2]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">資源所有者認可</anchor>において<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">資源所有者</anchor>が<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">認可</anchor>することとした場合に、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">鯖</anchor>は<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">コールバックURL</anchor> に<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">資源所有者</anchor>を<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">リダイレクト</anchor>するなら、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">URL</anchor> の <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">query</anchor> の <code class="URI" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">oauth_verifier</anchor></code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">引数</anchor>で<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">検証符号</anchor>を指定しなければ<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><strong xmlns="http://www.w3.org/1999/xhtml">なりません</strong></anchor> <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="1" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;1</anchor-internal></src>。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[3]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">鯖</anchor>が<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">資源所有者</anchor>を<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">リダイレクト</anchor>しない場合には、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">鯖</anchor>は<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">資源所有者</anchor>に<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">検証符号</anchor>を表示し、手動で<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">クライアント</anchor>に入力するよう指示する<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><strong xmlns="http://www.w3.org/1999/xhtml">べきです</strong></anchor> <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="1" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;1</anchor-internal></src>。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="17" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[17]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">リダイレクト</anchor>しないで<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">検証符号</anchor>を表示する場合、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">クライアント</anchor>が能力の限られた装置で動作していると<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">鯖</anchor>が知っている時は、
手動入力に相応しい値とする<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><strong xmlns="http://www.w3.org/1999/xhtml">べきです</strong></anchor>。 <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="1" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;1</anchor-internal></src></p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="28" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[28]</anchor-end> 生成する値の長さや値域に仕様上の制約はありません <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="20" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;20</anchor-internal></src>。
しかしあまりに短い値だと推測できない値になりません。</p><comment-p xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="8" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[8]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">リダイレクト</anchor>しない場合には、あまり長くはない<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ASCII英数字</anchor>の列とするのが一般的なようです。</comment-p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="7" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[7]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">クライアント</anchor>は、<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">資源所有者認可</anchor>により発行された<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">検証符号</anchor>を<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">資源所有者</anchor>から得たら、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">トークン要求</anchor>の際にそれを <code class="URI" xml:lang="en"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">oauth_verifier</anchor></code> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">引数</anchor>
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">OAuth 1.0</anchor> としての<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">引数</anchor>) に指定しなければ<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><strong xmlns="http://www.w3.org/1999/xhtml">なりません</strong></anchor> <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="6" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;6</anchor-internal></src>。
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">鯖</anchor>は指定された値が正しければ<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">トークン要求</anchor>を発行できます。</p></section></body></html>