1

API 呼び出しを保護するために、アプリケーションに Oauth2 を実装しました。私の Oauth とリソース サーバーは、2 つの別々の物理ボックス上にあります (ただし、同じネットワーク上にあります)。リソース サーバーでの呼び出しごとに、Oauthtoken 検証のために Oauth サーバーを呼び出す必要があります。

1 日に何百万ものリクエストがリソース サーバーに送信されます。現在、Oauth トークンを検証するために、リソース サーバーから Oauth サーバーへの残りの呼び出しを使用しています。

すべての呼び出しを Oauth サーバーにリダイレクトする必要があるため、これを高速化する方法はありますか? WebSocket はこの問題を解決できますか?

4

1 に答える 1

0

個々のアクセス トークンを取り消す必要がない場合は、ステートレス (JSON Web トークン) JWT トークンを使用できます。JWT は承認サーバーで検証する必要はありません。JWT トークンが認可サーバーによって署名されている限り (非対称暗号方式)、認可サーバーの公開鍵を使用してリソース サーバー自体でトークンを検証できます。

これにより、承認が高速になります (サーバー間のラウンドトリップがスキップされるため) が、取り消しが容易になります。

注: 共有秘密鍵 (対称暗号化) を使用することもできますが、その場合は、すべての関係者が共有秘密鍵を持っていることを確認する必要があります (それを秘密にしておく必要があります)。

spring-security-jwt とhttps://jwt.io/を調べてください

于 2016-04-23T16:38:54.197 に答える