[19] state
引数は、 CSRF
対策のために状態を表す値を指定するものです。
[3] state
引数の値は、クライアントが要求とコールバックとの間で状態を維持するために使う不透明な値です。 >>1, >>8
[17] この引数の値は、1文字以上の印字可能ASCII文字の列です >>16。
[2] 認可符号やアクセストークンを取得するための認可エンドポイント
(に資源所有者にアクセスさせるためのクライアントから資源所有者への応答で示すリダイレクトURL)
では、 state
引数を指定するべきです >>1, >>8。
[4] 認可鯖は資源所有者 (の利用者エージェント)
をクライアントへとリダイレクトして戻す時に、
リダイレクトURLに state
引数で同じ値を (あれば)
指定しなければなりません >>1, >>6, >>7, >>8, >>9, >>10。
[14] クライアントは CSRF 対策を実装しなければなりません。
一般的にはリダイレクトURLに認証状態を表す値を含める方法が採られますが、
その値の指定には state
引数を使うべきです。 >>13
[15] CSRF 対策に使う値は推測できないものでなければなりません。 攻撃者が推測できる確率は 2-128 以下でなければならず、 2-160 以下であるべきです。 >>13