[解決済み】OAuth v2には、なぜアクセス・トークンとリフレッシュ・トークンの両方があるのでしょうか?
質問
OAuth 2.0プロトコルのドラフト4.2項では、認証サーバーが、認証に必要な情報を得るために
access_token
(リソースとの認証に使用される)と同様に
refresh_token
これは、純粋に新しい
access_token
:
https://www.rfc-editor.org/rfc/rfc6749#section-4.2
なぜ両方あるのか?なぜ
access_token
と同じ長さです。
refresh_token
を持たず、かつ
refresh_token
?
解決方法は?
リフレッシュ・トークンのアイデアは、アクセストークンが侵害された場合、それが短命であるため、攻撃者がそれを悪用するための限られたウィンドウを持つというものです。
リフレッシュ・トークンが漏洩した場合、攻撃者はアクセストークンを獲得するためにリフレッシュ・トークンに加えてクライアントIDとシークレットを要求するため、役に立たない。
とはいえ アクセス/リフレッシュ・トークンを要求する際に、オリジナルのクライアントIDとシークレットも含めて、認可サーバーとリソース・サーバーのすべての呼び出しがSSL上で行われるので、アクセストークンが長寿命のリフレッシュ・トークンとクライアントID/シークレットの組み合わせよりも「妥協しやすい」のかどうか、私にはよくわからないのです。
これはもちろん、認可サーバーとリソースサーバーの両方を制御しない実装とは異なります。
リフレッシュ・トークンの使用法については、こちらのスレッドが参考になります。 OAuth アーカイブ .
リフレッシュ・トークンのセキュリティ上の目的について、上記から引用します。
<ブロッククオートリフレッシュ・トークンは...長期間のアクセス・トークンの漏洩リスクを軽減します(安全でないリソース・サーバーのログファイル内のクエリ・パラメータ、ベータまたは不十分なコーディングのリソース・サーバーのアプリ、httpsでないサイトのJS SDKクライアントがクッキーにアクセス・トークンを入れる、など)。
関連
-
[解決済み] XMLHttpRequestがファイルを読み込めません。クロスオリジンリクエストはHTTPのみサポートされています
-
[解決済み] curl - --insecure オプションを使用した場合、データは暗号化されますか?
-
[解決済み] なぜGoogleはJSONレスポンスにwhile(1);を前置するのでしょうか?
-
[解決済み] OpenIDとOAuthの違いは何ですか?
-
[解決済み】XKCDコミック「Bobby Tables」のSQLインジェクションはどのように動作するのでしょうか?
-
[解決済み】OAuth v2には、なぜアクセス・トークンとリフレッシュ・トークンの両方があるのでしょうか?
-
[解決済み】Google OAuthのリフレッシュトークンを受け取れない
-
[解決済み】OAuth 2の暗黙のグラント承認タイプの目的は何ですか?
-
[解決済み】SHA512とBlowfish、Bcryptの比較【クローズド
-
[解決済み】cerファイル、pvkファイル、pfxファイルの違いは何ですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] XMLHttpRequestがファイルを読み込めません。クロスオリジンリクエストはHTTPのみサポートされています
-
[解決済み] 新しいAPIキーを生成するための最適な方法は何ですか?
-
[解決済み] MacのChromeから証明書をエクスポートする方法は?
-
[解決済み] curl - --insecure オプションを使用した場合、データは暗号化されますか?
-
[解決済み] Fiddlerのルート証明書を永久に信頼するのは「安全」なのか?
-
[解決済み] CSRFとX-CSRF-Tokenの違いについて
-
[解決済み】OAuth v2には、なぜアクセス・トークンとリフレッシュ・トークンの両方があるのでしょうか?
-
[解決済み】パスワードの「二重ハッシュ化」は、一度だけハッシュ化するよりも安全性が低いのでしょうか?
-
[解決済み】Windowsでコードサイニング用の自己署名証明書を作成する方法を教えてください。
-
[解決済み] Refresh Token "の目的は何ですか?