70

告白しなければならないのは、私はこの疑問を非常に長い間持っていたのですが、まったく理解できませんでした。

認証トークンは金庫の鍵のようなもので、有効期限が切れると使用できなくなります。これで、別の使用可能なキーを取得するために使用できるマジック リフレッシュ トークンが与えられました。では、認証トークンの有効期限を更新トークンと同じに設定しないのはなぜですか? なぜわざわざ?

その正当な理由は何ですか、おそらく歴史的なものですか?本当に知りたい。ありがとう

4

5 に答える 5

17

参照された回答 (@Anders 経由) は役に立ちます。次のように述べています。

侵害された場合、有効な時間枠は制限されますが、トークンは SSL 経由で使用されるため、侵害される可能性はほとんどありません。

重要な部分は、アクセス トークンが頻繁にログに記録されることだと思います (特に、JSONP に役立つクエリ パラメーターとして使用される場合)。

サービス プロバイダーによる OAuth 2.0 の大規模な実装には、いくつかの追加の理由があります。

  1. API サーバーは、失効について心配しなくてもよい場合、DB ルックアップや RPC 呼び出しなしでアクセス トークンを安全に検証できます。これにより、パフォーマンスが大幅に向上し、API サーバーの複雑さが軽減されます。トークンの取り消しに 30 ~ 60 m (またはアクセス トークンの長さに関係なく) かかることに問題がない場合に最適です。もちろん、API サーバーは、過去 1 時間に取り消されたトークンのリストをメモリ内に保持することもできます。

  2. トークンは複数の異なる API サービスにアクセスできる複数のスコープを持つことができるため、有効期間が短いアクセス トークンを使用すると、API サービスの開発者が API サービス B 上のユーザーのデータに生涯アクセスすることができなくなります。区画化はセキュリティに適しています。

于 2012-05-24T01:57:33.347 に答える
5

可能な答えを短くする:

リフレッシュ トークンを使用すると、トークンの範囲指定 / 異なる減衰時間が可能になります。実際のリソース トークンの有効期間は短いですが、更新トークンは何年も有効なままです (モバイル アプリ)。これにより、セキュリティ (リソース トークンを保護する必要がない) とパフォーマンス (リフレッシュ トークン API のみが DB に対して有効性をチェックする必要がある) が向上します。

于 2016-08-05T21:03:44.437 に答える