問題タブ [angular-auth-oidc-client]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1065 参照

angular - リフレッシュ トークンの有効期限が切れている場合でもアクセス トークンを要求できるのはなぜですか?

リフレッシュ トークンに関する質問があります。次のように、Identity Server で Angular クライアントを構成しました。

また、Angular クライアントは「サイレント更新」メカニズムを使用します (angular-auth-oidc-client を使用)。

Angular クライアントが起動すると、20 秒後に「サイレント更新」が開始され、新しいアクセス トークンが要求されます。これは、30 秒のアクセス トークンの有効期間の約 75% であるため、理にかなっています)。新しいアクセス トークンを取得し、すべてが機能し続けます。

ある時点で、サイレント更新を停止します。これは、アクセス トークンが更新されなくなったことを意味します。実際、しばらくすると、アクセス トークンの有効期限が切れたため、Web API への呼び出しが失敗します。

さて、数分後、「サイレント更新」を再開します。

奇妙なことに、新しいアクセス トークンの取得に成功していますが、リフレッシュ トークンは 60 秒後に期限切れになるはずなので、これはもう機能しないはずだと理解していましたか?

おそらく、このスライディング リフレッシュ トークン メカニズムがどのように機能するかを誤解している..期限切れのリフレッシュ トークンを使用して新しいアクセス トークンをリクエストできる理由を誰か説明できますか?