API ゲートウェイの詳細

完了

ソリューションには、複数のフロントエンドおよびバックエンド サービスが含まれている場合があります。 このシナリオのクライアントでは、呼び出すエンドポイントをどのようにして把握するのでしょうか。 新しいサービスが導入されたり、既存のサービスがリファクタリングされた場合は何が起こるのでしょうか。 サービスは、SSL 終了、認証、およびその他の問題をどのように処理するのでしょうか。

API Management ゲートウェイ (データ プレーンまたはランタイムとも呼ばれます) は、API 要求のプロキシ処理、ポリシーの適用、テレメトリの収集を担当するサービス コンポーネントです。

API ゲートウェイは、クライアントとサービスの間に位置します。 それは、要求をクライアントからサービスにルーティングするリバース プロキシとして機能します。 さらに、認証、SSL 終了、レート制限などのさまざまな横断的タスクを実行できます。 ゲートウェイをデプロイしない場合、クライアントは、バックエンド サービスに直接要求を送信する必要があります。 ただし、クライアントにサービスを直接公開することには潜在的な問題があります。

  • クライアント コードが複雑になる可能性があります。 クライアントは、複数のエンドポイントを追跡し、回復力のある方法でエラーを処理する必要があります。
  • クライアントとバックエンド間の結合が作成されます。 クライアントは、個々のサービスを分解する方法を知る必要があります。 これにより、クライアントの管理がますます困難になり、同時にサービスのリファクターも難しくなります。
  • 単一の操作で、複数のサービスの呼び出しが必要な場合があります。
  • 各公開サービスで、認証、SSL、クライアントのレート制限などの問題を処理する必要があります。
  • サービスは、HTTP や WebSocket などのクライアントに適したプロトコルを公開する必要があります。 これにより、通信プロトコルの選択肢が制限されます。
  • パブリック エンドポイントを使用するサービスは潜在的な攻撃対象であるため、セキュリティで保護する必要があります。

ゲートウェイは、サービスからクライアントを分離することによって、これらの問題に対処するのに役立ちます。

マネージドとセルフホステッド

API Management は、マネージド ゲートウェイとセルフホステッド ゲートウェイの両方を提供します。

  • マネージド - マネージド ゲートウェイは、すべてのサービス レベルのすべてのAPI Management インスタンスに対して Azure にデプロイされる既定のゲートウェイ コンポーネントです。 マネージド ゲートウェイを使用すると、API を実装するバックエンドがホストされる場所に関係なく、すべての API トラフィックが Azure を通過します。

  • セルフホステッド - セルフホステッド ゲートウェイ は、既定のマネージド ゲートウェイのオプションのコンテナー化されたバージョンです。 これは、API バックエンドがホストされているのと同じ環境で Azure からゲートウェイを実行する要件があるハイブリッドおよびマルチクラウドのシナリオに役立ちます。 セルフホステッド ゲートウェイを利用すると、ハイブリッド IT インフラストラクチャを使用しているお客様は、オンプレミスおよびクラウドに渡ってホストされている API を Azure 内の単一の API Management サービスから管理できるようになります。