インターネット経由でアクセスできるように公開されている Web アプリがあります。このアプリは、アプリが呼び出すことができる API のモノリシック セット (ユーザー認証を含む) を含む Web サーバー上で実行されます。ユーザーが自分のコードから自分のアカウントに関する限定されたデータ セットをクエリできるように、"API" (ex// データの収集) を公開したいと考えています。これにより、収集したデータを使用してカスタム ダッシュボードを作成できるようになります。
この新しい API を使用すると、API 呼び出しを Web-ap 以外の場所から行うことができるようになりました。そのため、リクエストの「ロード」を管理する API ゲートウェイを設定します。たとえば、ゲートウェイはユーザーのリクエストを 10 分に 1 回に制限できます。
エンド ユーザーには、Kong を介してリクエストを行うための API キーが与えられ、Kong は Web サーバーへの HTTP GET/POST を使用して API クエリを実行します。私たちの Web サーバーは公開されているため、API の要求 (データの収集) が Kong からのみ送信されていることを確認する方法が必要です。私はJWTについていくつかの調査を行いましたが、可能なアプローチのようです。Web サーバーによって発行された独自の JWT を Kong サーバーに単純に与えることは理にかなっていますか? 次に、Kong JWT を持たない Web サーバーへの GET/POST は拒否されます。
これは API ゲートウェイの最も論理的なセットアップではない可能性があることはわかっています。通常、Kong が相互に通信するのと同じプライベート ネットワーク上にマイクロサービスがあり、Kong のように着信するリクエストの信頼性を必ずしも検証する必要はありません。それを処理します。しかし、現在のセットアップを考えると、JWT アプローチが最も理にかなっているでしょうか?